• (转)mysql创建表时反引号的作用


     试用navicat工具查看现网mysql建表语句时,发现表名和字段名都是反引号引起来的

    CREATE TABLE `tab_notice_title_tv` (
      `i_id` int(11) NOT NULL AUTO_INCREMENT,
      `c_opcom_key` varchar(32) DEFAULT NULL,
      `c_view_type` int(11) DEFAULT '1' COMMENT '平台类型,1:标清,2:高清',
      `c_title` varchar(32) DEFAULT NULL,
      `c_status` int(2) DEFAULT '0',
      `c_creator` varchar(32) DEFAULT '',
      `c_createtime` varchar(32) DEFAULT NULL,
      `c_deleted` int(2) NOT NULL DEFAULT '0',
      PRIMARY KEY (`i_id`)
    ) ENGINE=MyISAM AUTO_INCREMENT=46 DEFAULT CHARSET=gbk;
    

    反引号,一般在ESC键的下方。
    它是为了区分MYSQL的保留字与普通字符而引入的符号。
    举个例子:SELECT `select` FROM `test` WHERE select=’字段值’
    在test表中,有个select字段,如果不用反引号,MYSQL将把select视为保留字而导致出错,所以,有MYSQL保留字作为字段的,必须加上反引号来区分。
    引号一般用在字段的值,如果字段值是字符或字符串,则要加引号,如:select=’字段值’
    不加反引号建的表不能包含MYSQL保留字,否则出错

    名字上带反的反引号,这个其实是为了防止 当字段为关键字时,用这个符号就可以不报错了

    CREATE TABLE `zz_files` (
      `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
      `data_id` int(11) DEFAULT NULL,
      `name` varchar(60) COLLATE utf8_unicode_ci DEFAULT NULL,
      `fileurl` varchar(40) COLLATE utf8_unicode_ci DEFAULT NULL,
      `ext` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '扩展名',
      `cate` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL,
      `desc` int(11) DEFAULT NULL,
      `c_time` int(11) DEFAULT NULL,
      PRIMARY KEY (`id`)
    ) ENGINE=MyISAM AUTO_INCREMENT=12 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
    

    如上对于desc这种关键字,用这个符号就不会出错了 

    参考链接

    http://blog.163.com/zhu329599788@126/blog/static/66693350201721651918235/

  • 相关阅读:
    Html5新增视频功能——video API 事件
    HTML5新增的视频功能——video属性
    jQuery封装的tab组件(可选自动+可选延迟处理+按需加载)
    jQuery封装tab选项卡组件(自定义自动功能和延迟显示功能)
    jQuery对象只能使用jQuery提供的方法,不能使用原生js提供的方法
    语法糖 —— 糖糖糖
    面向对象
    Call to undefined function IlluminateEncryptionopenssl_cipher_iv_length()
    HTTP协议
    功能算法
  • 原文地址:https://www.cnblogs.com/nmap/p/6714031.html
Copyright © 2020-2023  润新知