mysql,如何理解语句的执行标志?分隔符delimiter
发布于 作者:苏南大叔 来源:程序如此灵动~
本文中的内容描述的是mysql语句中的分隔符delimiter,属于相对罕见的内容。使用场景上来说,通过切换语句立即执行的标准,在客户端mysql命令行下面,输入执行大段语句。那么,具体来说,mysql分隔符delimiter是如何使用的呢?

大家好,这里是苏南大叔的“程序如此灵动”博客,记录苏南大叔的代码经验。本文描述mysql中的存储过程的分隔符delimiter使用方法。测试环境:win10,mysql@5.7.26。
基本内容
本文的使用环境,是官方的mysql命令行工具mysql client。所以,如果找不到mysql相关命令的话,最好建议是把mysql/bin/目录加入全局变量path。

使用下面的命令,可以进入mysql的命令行数据管理功能。
mysql -uroot -p然后输入密码即可。

可以看到输出了下面的字样:
Commands end with ; or \g.分隔符其实就是命令输入完毕的意思,命令输入完毕就会触发对应语句的执行。那么,默认的分隔符是分号;。
临时修改分隔符
可以通过delimiter命令临时修改分隔符设置,临时修改的原因就是:因为要在官方mysql client客户端里面输入大段的sql语句,这些语句中存在着分号表示语句结束。但是,并不需要立即执行这些语句。
这里需要特别强调的是:在官方的客户端命令行下面输入时,可能需要临时修改分隔符。因为在第三方可视化客户端里面,输入分号的时候,并不会触发立即执行。所以,并没有这个烦恼,并不需要临时修改分隔符。
设置为美元符号:
delimiter $恢复默认:
delimiter ;下面的截图是个切换效果的演示:
delimiter $
select "sunan" $
delimiter ;
select "sunan" ;
退出当前连接后,这些delimiter设置就失效了。再次进入的时候,就又恢复分号分隔符了。相关文章
- https://newsn.net/say/phpstudy-mysql-upgrade.html
- https://newsn.net/say/phpstudy-mysql-upgrade-2.html
总结
分隔符就是用于告诉mysql当前的输入结束了,可以触发语句解释和执行了。更多mysql文章,请参考: