一、表名``问题
出现错误:
语句: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#`。
总结:建议不要使用#命名。
补充:
``中的内容被认定为普通字符串,也因此可以创建一些非常规方式或者关键字命名的表名,对于字段名也是同理
本文讨论了在SQL中遇到的两个常见问题:一是使用关键字如'order'作为表名导致的错误,解决方法是使用反引号包裹;二是列名使用'#'引起的错误,因'#'是注释标识符,需同样用反引号处理。总结建议避免使用关键字和特殊字符作为数据库对象的名称,以防止语法冲突和不必要的麻烦。
1042

被折叠的 条评论
为什么被折叠?



