失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > mysql用exists怎么会报语法错误_SQL if exists database总是出现语法错误

mysql用exists怎么会报语法错误_SQL if exists database总是出现语法错误

时间:2019-08-23 04:44:14

相关推荐

mysql用exists怎么会报语法错误_SQL if exists database总是出现语法错误

SQL if exists总是出现语法错误。望高手纠正。_百度知道 /link?url=7VyzcX0V1A3lhBQ1emNt2sTk7QGDuijOqRsSxc1ML7owhy5utaaRIUYBtGG8hRmf8HaSlIgRKsEvkI3Tqc9guq

IF EXISTS ( SELECT name FROM sys.databases WHERE name = 'ttt' )

DROP DATABASE ttt;

或者

IF EXISTS ( SELECT name FROM sys.databases WHERE name = 'ttt' )

DROP DATABASE [ttt];

或者

IF EXISTS ( SELECT name FROM databases WHERE name = 'ttt' )

DROP DATABASE ttt;

没怎么用mySQL,所以不大确定和我学的一不一样,给了三个可能,应该是其中一种。

追问试过了,都不行!还是ERROR 1064.回答我帮你上网查了一下,ERROR1064一般是版本问题,因为不同版本有不同的Reserve Word,比如‘Order’和‘When’,也有因为忘了分号出现的,还有的大多数是CREATE TABLE才出现的。

你的error message没有更详细的吗?追问

我的SQL版本是5.5.27.0 已经卡在这好几天了,网上也查过下,但至此未找到原因,若能助找出原因,这个年可过得踏实多了。呵呵.....回答又查了半天资料,你试试这个吧

DROP DATABASE IF EXISTS ttt;

另外:这个database是test或者learning用的吗?随便删database没关系?提问者评价感谢你的帮助,确实可顺利执行,只是不太明白,为什么按原有语法会出错,教程所述都是这样写的。

drop database if exists `dbname`;

追问这个命令确实可以解决。只是不明白为何网上看的基本都是if exists(select * from sys.databases where name='xxx' )的格式,却根本不可执行!回答因为select from 后接的是表名

你是sys.databases SQL会理解为是表名并不是数据库

如果觉得《mysql用exists怎么会报语法错误_SQL if exists database总是出现语法错误》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。