MySQL中预处理语句prepare、execute、deallocate怎么用

技术MySQL中预处理语句prepare、execute、deallocate怎么用这篇文章将为大家详细讲解有关MySQL中预处理语句prepare、execute、deallocate怎么用,小编觉得挺实用的,因此分享

这篇文章将为大家详细讲解有关关系型数据库中预处理语句准备、执行、解除分配怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

关系型数据库官方将准备、执行、解除分配统称为准备陈述。

我习惯称其为【预处理语句】。

其用法十分简单,

PREPARE stmt_name FROM preparable_stmt

EXECUTE stmt_name

[USING @var_name[,@http://

var_name]...] -

举个栗子:

mysql PREPARE pr1 FROM 'SELECT?';

查询正常,0行受影响(0.01秒)

准备的声明

mysql SET @a=1,@ b=10

查询正常,0行受影响(0.00秒)

mysql EXECUTE pr1 USING @a,@ b;

-

| ?|

-

| 11 |

-

一行一组(0.00秒)

mysql EXECUTE pr1 USING 1,2;-只能使用用户变量传递。

错误1064 (42000):您的结构化查询语言语法有错误;查看与您的关系型数据库服务器版本相对应的手册,了解

第一行"1,2"附近使用的正确语法

MySQL DECLARATE PREMIUM pr1

查询正常,0行受影响(0.00秒)

使用PAREPARE STATEMENT可以减少每次执行结构化查询语言的语法分析,

比如用于执行带有在哪里条件的挑选和删除,或者更新,或者插入,只需要每次修改变量值即可。

同样可以防止结构化查询语言注入,参数值可以包含转义符和定界符。

适用在应用程序中,或者结构化查询语言脚本中均可。

更多用法:

同样准备.从可以直接接用户变量:

MySQL CREATE TABLE a(a int);

查询正常,0行受影响(0.26秒)

关系型数据库插入到选择1中;

查询正常,1行受影响(0.04秒)

记录: 1副本: 0警告: 0

关系型数据库插入到选择2中;

查询正常,1行受影响(0.04秒)

记录: 1副本: 0警告: 0

关系型数据库插入到选择3中;

查询正常,1行受影响(0.04秒)

记录: 1副本: 0警告: 0

MySQL SET @ SELECT _ test=CONCAT(' SELECT * FROM ',@ table _ name);

查询正常,0行受影响(0.00秒)

mysql SET @ table _ name=' a '

查询正常,0行受影响(0.00秒)

MySQL PREPARE pr2 FROM @ select _ test;

查询正常,0行受影响(0.00秒)

准备的声明

mysql EXECUTE pr2

-

| a|

-

| 1|

| 2 |

| 3 |

-

3行一组(0.00秒)

MySQL DROP PREMIUM pr2-此处滴可以替代重新分配

查询正常,0行受影响(0.00秒)

每一次执行完执行时,养成好习惯,须执行解除分配准备…语句,这样可以释放执行中使用的所有数据库资源(如游标)。

不仅如此,如果一个会议的预处理语句过多,可能会达到最大_准备_ stmt _计数的上限值。

预处理语句只能在创建者的会话中可以使用,其他会话是无法使用的。

而且在任意方式(正常或非正常)退出会话时,之前定义好的预处理语句将不复存在。

如果在存储过程中使用,如果不在过程中重新分配掉,在存储过程结束之后,该预处理语句仍然会有效。

关于“MySQL中预处理语句准备、执行、解除分配怎么用"这篇文章就分享到这里了,希望

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/56696.html

(0)

相关推荐

  • react中间事件怎么绑定(react事件绑定方法视频)

    技术怎么进行React事件绑定本篇文章给大家分享的是有关怎么进行React事件绑定,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。类组件事件绑定import

    攻略 2021年12月18日
  • DM-表空间

    技术DM-表空间 DM-表空间DM表空间表空间
    表空间由一个或者多个数据文件组成。
    在创建 DM 数据库时,会自动创建 5 个表空间:SYSTEM 表空间、ROLL 表空间、MAIN 表空间、TEMP

    礼包 2021年10月19日
  • 如何解决VB.NET串口通讯问题

    技术如何解决VB.NET串口通讯问题这篇文章主要介绍了如何解决VB.NET串口通讯问题,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。VB.NET串口通讯支

    攻略 2021年12月2日
  • 如何理解Spring Cloud微服务架构

    技术如何理解Spring Cloud微服务架构这篇文章主要讲解了“如何理解Spring Cloud微服务架构”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何理解Spri

    攻略 2021年10月20日
  • NHibernate是什么

    技术NHibernate是什么本篇内容介绍了“NHibernate是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!N

    攻略 2021年12月4日
  • net native支持winform(net native 是什么)

    技术什么是.NET Native这篇文章给大家分享的是有关什么是.NET Native的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。什么是.NET Native? .NET Native是一套

    攻略 2021年12月16日