MySQL Create Table语句的应用与语法

数据库 MySQL
此文章主要讲述的是MySQL Create Table语句的实际操作步骤以及MySQL Create Table语句的基本语法的描述,下面就是文章的主要内容。

以下的文章主要介绍的是MySQL Create Table语句的实际用法与MySQL Create Table语句的基本语法的介绍,如果你对其具体的操作步骤感兴趣的话,你就可以对以下的文章来一个“大阅兵”。

MySQL中create table语句的基本语法是:

 

 

  1. CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name [(create_definition,...)]  
  2. [table_options] [select_statement]  

 

 

TEMPORARY:该关键字表示用MySQL create table新建的表为临时表,此表在当前会话结束后将自动消失。临时表主要被应用于存储过程中,对于目前尚不支持存储过程的MySQL,该关键字一般不用。

 

IF NOT EXISTS:实际上是在建表前加上一个判断,只有该表目前尚不存在时才执行create table操作。用此选项可以避免出现表已经存在无法再新建的错误。

 

tbl_name:你所要创建的表的表名。该表名必须符合标识符规则。通常的做法是在表名中仅使用字母、数字及下划线。例如titles、our_sales、my_user1等都应该算是比较规范的表名。

 

create_definition:这是MySQL create table语句中关键部分所在。在该部分具体定义了表中各列的属性。

 

create_definition的基本语句是:

 

 

  1. col_name type [NOT NULL | NULL] [DEFAULT default_value] [AUTO_INCREMENT]  
  2. [PRIMARY KEY] [reference_definition]  
  3. or PRIMARY KEY (index_col_name,...)  
  4. or KEY [index_name] (index_col_name,...)  
  5. or INDEX [index_name] (index_col_name,...)  
  6. or UNIQUE [INDEX] [index_name] (index_col_name,...)  
  7. or [CONSTRAINT symbol] FOREIGN KEY index_name (index_col_name,...)  
  8. [reference_definition]  
  9. or CHECK (expr) 

col_name:表中列的名字。必须符合标识符规则,而且在表中要唯一。

type:列的数据类型。有的数据类型需要指明长度n,并用括号括起。目前MySQL提供的数据类型详见MySQL进阶_列类型篇。

 

NOT NULL | NULL:指定该列是否允许为空。如果既不指定NULL也不指定NOT NULL,列被认为指定了NULL。

 

DEFAULT default_value:为列指定默认值。如果没有为列指定默认值,MySQL自动地分配一个。如果列可以取NULL作为值,缺省值是NULL。如果列被声明为NOT NULL,缺省值取决于列类型:

1、对于没有声明AUTO_INCREMENT属性的数字类型,缺省值是0。对于一个AUTO_INCREMENT列,缺省值是在顺序中的下一个值。

2、对于除TIMESTAMP的日期和时间类型,缺省值是该类型适当的“零”值。对于表中***个TIMESTAMP列,缺省值是当前的日期和时间。

3、对于除ENUM的字符串类型,缺省是空字符串。对于ENUM,缺省值是***个枚举值。

 

AUTO_INCREMENT:设置该列有自增属性,只有整型列才能设置此属性。当你插入NULL值或0到一个AUTO_INCREMENT列中时,列被设置为value+1,在这里 value是此前表中该列的***值。AUTO_INCREMENT顺序从1开始。每个表只能有一个AUTO_INCREMENT列,并且它必须被索引。

 

以上的相关内容就是对MySQL Create Table语句 的介绍,望你能有所收获。

【编辑推荐】

  1. MySQL导入导出.sql文件实践演练
  2. MySQL数据库中的5种数据类型简介
  3. 对MySQL DELETE语法的详细解析
  4. MySQL show的实际操作用法
  5. MySQL 游标的具体使用方案
责任编辑:佚名 来源: 博客园
相关推荐

2010-10-08 16:10:58

MySQL creat

2010-10-08 16:05:30

MySQL DELET

2010-05-20 09:01:22

MySQL数据库

2011-08-24 13:29:20

CREATE TABL中文man

2011-08-24 13:32:56

CREATE TABL中文man

2010-09-17 16:53:14

SQL中CREATE

2010-05-21 16:41:22

MySQL SHOW

2010-09-13 17:11:42

sql server

2010-09-07 11:24:25

SQL语句

2010-11-04 11:39:47

2010-09-08 17:10:24

SQL循环语句

2011-03-21 15:47:57

LAMPMySQL语法

2010-05-27 17:35:36

MYSQL DELET

2010-09-26 10:27:22

SQL替换语句

2010-11-18 13:09:19

Oracle case

2010-09-07 09:29:21

SQL语句

2010-11-12 13:40:38

动态sql语句

2010-06-13 13:50:02

MySQL存储引擎

2010-05-21 10:58:19

MySQL存储引擎

2010-05-18 14:21:35

MySQL视图
点赞
收藏

51CTO技术栈公众号