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

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

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


1

2

3

4

5

6

7

8

9

10

11

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保留字,否则出错

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


1

2

3

4

5

6

7

8

9

10

11

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这种关键字,用这个符号就不会出错了 

时间: 2024-12-06 23:10:42

(转)mysql创建表时反引号的作用的相关文章

MySQL 创建表时,设置时间字段自己主动插入当前时间

MySQL 创建表时,设置时间字段自己主动插入当前时间 DROP TABLE IF EXISTS `CONTENT`; CREATE TABLE `CONTENT` ( `ID` char(20) NOT NULL, `CURRENT_TIME` timestamp not null default current_timestamp, PRIMARY KEY (`ID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;

oracle与mysql创建表时的区别

oracle创建表时,不支持在建表时同时增加字段注释.故采用以下方式: #创建表CREATE TABLE predict_data as ( id integer NOT NULL, uid varchar2(80), mid varchar2(80), time date , content varchar2(300), constraint predict_data primary key (id) );#字段注释comment on table predict_data is '预测表';

MySQL 创建表时,设置时间字段自动插入当前时间

MySQL 创建表时,设置时间字段自动插入当前时间 DROP TABLE IF EXISTS `CONTENT`; CREATE TABLE `CONTENT` ( `ID` char(20) NOT NULL, `CURRENT_TIME` timestamp not null default current_timestamp, PRIMARY KEY (`ID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;

MySQL创建表和删除表

创建表 简单的方式 CREATE TABLE person ( number INT(11), name VARCHAR(255), birthday DATE ); 或者是 CREATE TABLE IF NOT EXISTS person ( number INT(11), name VARCHAR(255), birthday DATE ); 查看mysql创建表: SHOW CREATE table person; CREATE TABLE `person` ( `number` int

MYSQL创建表的约束条件(可选)

一.常用的一些约束条件 一.创建表的完整语法1.创建表的万能模板:create table 库名.表名( 字段名1 类型[(宽度) 约束条件], 字段名2 类型[(宽度) 约束条件], 字段名3 类型[(宽度) 约束条件]); 2.约束条件: 是在数据类型之外对字段附加的额外的限制,当然了这种约束条件就是可有可无的啦,那你该问小编了可有可无那没有多好,省着麻烦了,之所以有是为了保证数据的完整性和一致性,毕竟我们结合现实的实际生产场景来做选择 3.创建表注意事项: 1.最后一个字段之后不能加逗号

Python MySQL 创建表

章节 Python MySQL 入门 Python MySQL 创建数据库 Python MySQL 创建表 Python MySQL 插入表 Python MySQL Select Python MySQL Where Python MySQL Order By Python MySQL Delete Python MySQL 删除表 Python MySQL Update Python MySQL Limit Python MySQL Join 创建表 要在MySQL中创建表,可使用"CRE

Mysql 建表时,日期时间类型选择

mysql(5.5)所支持的日期时间类型有:DATETIME. TIMESTAMP.DATE.TIME.YEAR. 几种类型比较如下: 日期时间类型 占用空间 日期格式 最小值 最大值 零值表示  DATETIME  8 bytes  YYYY-MM-DD HH:MM:SS  1000-01-01 00:00:00 9999-12-31 23:59:59 0000-00-00 00:00:00  TIMESTAMP  4 bytes  YYYY-MM-DD HH:MM:SS  197001010

Oracle创建表时涉及的参数解析

1.oracle pctfree和pctused详解   http://www.cnblogs.com/linjiqin/archive/2012/01/16/2323320.html http://blog.csdn.net/huang_xw/article/details/6995442 2.Oracle中用创建表时Storage中参数的含义 http://www.cnblogs.com/rootq/articles/1089383.html

使用hbase的api创建表时出现的异常

1 /usr/lib/jvm/java-7-openjdk-amd64/bin/java -Didea.launcher.port=7538 -Didea.launcher.bin.path=/usr/local/idea-IC-139.225.3/bin -Dfile.encoding=UTF-8 -classpath /usr/lib/jvm/java-7-openjdk-amd64/jre/lib/rhino.jar:/usr/lib/jvm/java-7-openjdk-amd64/jr