关于MySQL中命名的问题

本文讨论了在SQL中遇到的两个常见问题:一是使用关键字如'order'作为表名导致的错误,解决方法是使用反引号包裹;二是列名使用'#'引起的错误,因'#'是注释标识符,需同样用反引号处理。总结建议避免使用关键字和特殊字符作为数据库对象的名称,以防止语法冲突和不必要的麻烦。

一、表名``问题

出现错误:

语句:SELECT *FROM order
报错:
> 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'order' at line 1

当添加``(键盘左上方数字1左边的按键)时:

SELECT *FROM `order`

得到结果:就是order表格的信息。

原因:因为order是关键字,不能直接当做非关键字用,需要加上``来使用。

总结:在表单的命名时尽量不要使用关键字当做表名,以免出现类似不必要的问题,如果使用SQL语句要加上``。

二、列名#问题

SELECT S# FROM S

报错,原因是“#”为MySQL中的注释标识符,因此要加上``,变为`S#`。

总结:建议不要使用#命名。

补充:

``中的内容被认定为普通字符串,也因此可以创建一些非常规方式或者关键字命名的表名,对于字段名也是同理

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值