MySql中delimiter的作用是什么
发表于:2025-01-29 作者:千家信息网编辑
千家信息网最后更新 2025年01月29日,MySql中delimiter的作用是什么,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。MYSQL导出一个SQL后:DELIMITE
千家信息网最后更新 2025年01月29日MySql中delimiter的作用是什么
MySql中delimiter的作用是什么,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
MYSQL导出一个SQL后:
DELIMITER $$ DROP TRIGGER IF EXISTS `updateegopriceondelete`$$ CREATE TRIGGER `updateegopriceondelete` AFTER DELETE ON `customerinfo` FOR EACH ROW BEGIN DELETE FROM egoprice WHERE customerId=OLD.customerId; END$$ DELIMITER ;
其中DELIMITER 定好结束符为"$$", 然后最后又定义为";", MYSQL的默认结束符为";".
详细解释:
其实就是告诉解释器,该段命令是否已经结束了,mysql是否可以执行了。
默认情况下,delimiter是分号;。在命令行客户端中,如果有一行命令以分号结束,
那么回车后,mysql将会执行该命令。如输入下面的语句
mysql> select * from test_table;
然后回车,那么MySQL将立即执行该语句。
但有时候,不希望MySQL这么做。在为可能输入较多的语句,且语句中包含有分号。
如试图在命令行客户端中输入如下语句
mysql> CREATE FUNCTION `SHORTEN`(S VARCHAR(255), N INT) mysql> RETURNS varchar(255) mysql> BEGIN mysql> IF ISNULL(S) THEN mysql> RETURN ; mysql> ELSEIF N<15 THEN mysql> RETURN LEFT(S, N); mysql> ELSE mysql> IF CHAR_LENGTH(S) <=N THEN mysql> RETURN S; mysql> ELSE mysql> RETURN CONCAT(LEFT(S, N-10), ..., RIGHT(S, 5)); mysql> END IF; mysql> END IF; mysql> END;
默认情况下,不可能等到用户把这些语句全部输入完之后,再执行整段语句。
因为mysql一遇到分号,它就要自动执行。
即,在语句RETURN ;时,mysql解释器就要执行了。
这种情况下,就需要事先把delimiter换成其它符号,如//或$$。
mysql> delimiter // mysql> CREATE FUNCTION `SHORTEN`(S VARCHAR(255), N INT) mysql> RETURNS varchar(255) mysql> BEGIN mysql> IF ISNULL(S) THEN mysql> RETURN ; mysql> ELSEIF N<15 THEN mysql> RETURN LEFT(S, N); mysql> ELSE mysql> IF CHAR_LENGTH(S) <=N THEN mysql> RETURN S; mysql> ELSE mysql> RETURN CONCAT(LEFT(S, N-10), ..., RIGHT(S, 5)); mysql> END IF; mysql> END IF; mysql> END;//
这样只有当//出现之后,mysql解释器才会执行这段语句
关于MySql中delimiter的作用是什么问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注行业资讯频道了解更多相关知识。
语句
命令
分号
解释
输入
情况
解释器
问题
作用
客户
客户端
更多
结束符
帮助
解答
易行
简单易行
一行
内容
只有
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
手机应用商店软件开发
操作系统的上层软件开发
荆门软件开发app制作
数据库管理技术最初阶段
dba数据库工程师招聘
40岁软件开发 换工作
杭州较真网络技术
网络安全责任和惩戒措施
计算机网络技术要学几年
明日之后怎么把服务器设置在外
农行软件开发工程师待遇
jetty服务器
网络安全的4k绘画二年级
陕西戴尔服务器虚拟化迁移云空间
服务器ip分配前端还是后端
excel访问数据库文件
minidao数据库
开发数据库应用的语言
达梦使用命令行导入数据库
ios软件开发按需定制
成都众游网络技术有限公司上市
45g网络技术
十九届六中网络安全
大文件上传与网络安全
ios下载服务器文件
软件开发 内容
关于软件开发的搞笑段子
洛阳节能软件开发公司
腾讯云有没有轻量应用服务器
数据库语句知识教程