当前位置 : 主页 > 数据库 > mysql >

解读SQL语句中要不要加单引号的问题

来源:互联网 收集:自由互联 发布时间:2023-03-17
目录 SQL语句中要不要加单引号? SQL不使用引号、使用单引号或双引号的区别 加引号和不加引号有什么区别? SQL中的单引号和双引号有区别吗? MySQL 参考手册 总结 SQL语句中要不要加单
目录
  • SQL语句中要不要加单引号?
  • SQL不使用引号、使用单引号或双引号的区别
    • 加引号和不加引号有什么区别?
    • SQL中的单引号和双引号有区别吗?
    • MySQL 参考手册
  • 总结

    SQL语句中要不要加单引号?

    犯了一个超级超级蠢的错误,把population写成polulation而不自知,多次提醒我找不到polulation列,这是其一;其二是我在未得知我写错的时候,我以为是字段名没有加单引号的问题,加了单引号之后结果变成:

    所以,对于SQL我有了一些新的认识:

    1、不能手快!不能手快!不能手快!

    好好记单词!好好记单词!好好记单词!

    2、对于单引号的问题,不能仅仅用其他编程语言的习惯来写SQL。 

    ① 表名和字段名,即使是中文也不用加单引号

    ② 对于表格内的value值,要不要加单引号取决于这个字段设置的数据类型。

    比如说看例表的属性:

    可以发现population列是int类型,而country是字符串类型,写的过程中就需要添加单引号,比如country=’美国’。

    3、SQL中的任何标点都是英文格式下的,所以避免切换不清,最好使用英文字段名之类的,避免重复切换造成标点格式的错误。

    SQL不使用引号、使用单引号或双引号的区别

    加引号和不加引号有什么区别?

    表名和字段名,即使是中文也不用加单引号;

    对于表格内的value值,要不要加单引号取决于这个字段设置的数据类型, 不加引号是数字类型,加了就是字符串或日期类型了 如果是 int 类型,那么是不需要引号的,不过,加起引号也不会报错,会自动转换类型。

    SQL中的单引号和双引号有区别吗?

    在标准 SQL 中,字符串使用的是单引号。

    如果字符串本身也包括单引号,则使用两个单引号(注意,不是双引号,字符串中的双引号不需要另外转义)。

    但在其它的数据库中可能存在对 SQL 的扩展,比如在 MySQL 中允许使用单引号和双引号两种。

    MySQL 参考手册

    字符串指用单引号’或双引号"引起来的字符序列。例如:

    • a string
    • another string

    如果SQL服务器模式启用了NSI_QUOTES,可以只用单引号引用字符串。用双引号引用的字符串被解释为一个识别符。

    总结

    以上为个人经验,希望能给大家一个参考,也希望大家多多支持自由互联。

    上一篇:MySQL需要关注的参数及状态变量解读
    下一篇:没有了
    网友评论