MySQL的CLIENT_MULTI_STATEMENTS用法

来源:互联网 发布:淘宝店铺新手教程 编辑:程序博客网 时间:2024/06/05 00:13

将多个语句发给MySQL,可以减少网络交互次数。对于带事务的情况,可以缩短单线程上事务的生存期。


C API

在mysql_real_connect 时连接参数增加CLIENT_MULTI_STATEMENTS就可以用分号隔开,将多个SQL语句一起发给Server。

其实在mysql自带的客户端中,连接参数就已经设置了这个位。

   mysql_real_connect(&mysql, host, user, password,
                          database, opt_mysql_port, opt_mysql_unix_port,
                          connect_flag | CLIENT_MULTI_STATEMENTS)
 

MySQL 客户端用法

但是用户在客户端(即mysql程序)上输入用分号区分的多个SQL语句,其实还是在客户端拆分以后按顺序发送的。

mysql> insert into testabc values(1,'a');insert into testabc values(2,'a'); 实际上是先执行完成第一个insert,返回结果后再发送第二个。
其原因是mysql客户端在解析用户输入时,会将”;”作为语句终结符。


重定义语句终结符即可。实际上要实现多语句的语法,我们在创建存储过程时就用过了。


delimiter ;;
begin;insert into testabc values(1, 'aaaaa');insert into testabc values(1, 'aaaaa');insert into testabc values(1, 'aaaaa'); commit;;
 
这样第二行是整行发给server端。


原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 假牙的吸盘坏了怎么办 燃气费用一直未交怎么办 凌度gps模块无法定位怎么办? 放疗定位线掉了怎么办 被网络平台骗了怎么办 手机重力传感器坏了怎么办 锤子手机重力传感器坏了怎么办 平板电脑没有开关键怎么办 手机重力感应器坏了怎么办 苹果手机重力感应器坏了怎么办 苹果手机陀螺仪坏了怎么办 狗狗的爪子肿了怎么办 压缩文件之后显示拒绝访问怎么办 压缩文件解压后全散开了怎么办 dnf助手改名字用完了怎么办 缅甸 佤邦 办中国护照 怎么办? 电脑玩游戏网络延迟大怎么办 qq好友空间锁了怎么办 卡盟进货额不足怎么办 被朋友骗了钱怎么办 联通在学校网差怎么办 前夫把我微信拉黑 孩子的事怎么办 微信好友验证疑似被盗怎么办 我的世界被banip怎么办 dnf深渊宝珠出了怎么办 吞噬魔4个球吃了怎么办 dnf没有支援兵了怎么办 家里没通天然气怎么办 苹果6p16g不够用怎么办 魅蓝手机内存不够用怎么办 3dmax灯光全黑怎么办 高压15o低压1oo怎么办 源码一位乘法中c怎么办 怀孕搬了重东西怎么办 深蹲力量不涨怎么办 ps4连接显示器分辨率低怎么办 大疆失去链接后怎么办 脑袋被锤了几拳怎么办 华为手机变板砖怎么办 电脑网页打开很慢怎么办 网页加载速度太慢.怎么办