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


Posted in PHP onJanuary 15, 2007

MySQL中create table语句的基本语法是: 
Create [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name [(create_definition,...)] 
[table_options] [select_statement] 
TEMPORARY:该关键字表示用create table新建的表为临时表,此表在当前会话结束后将自动消失。临时表主要被应用于存储过程中,对于目前尚不支持存储过程的MySQL,该关键字一般不用。 
IF NOT EXISTS:实际上是在建表前加上一个判断,只有该表目前尚不存在时才执行create table操作。用此选项可以避免出现表已经存在无法再新建的错误。 
tbl_name:你所要创建的表的表名。该表名必须符合标识符规则。通常的做法是在表名中仅使用字母、数字及下划线。例如titles、our_sales、my_user1等都应该算是比较规范的表名。 
create_definition:这是create table语句中关键部分所在。在该部分具体定义了表中各列的属性。 
create_definition的基本语句是: 
col_name type [NOT NULL | NULL] [DEFAULT default_value] [AUTO_INCREMENT] 
[PRIMARY KEY] [reference_definition] 
or PRIMARY KEY (index_col_name,...) 
or KEY [index_name] (index_col_name,...) 
or INDEX [index_name] (index_col_name,...) 
or UNIQUE [INDEX] [index_name] (index_col_name,...) 
or [CONSTRAINT symbol] FOREIGN KEY index_name (index_col_name,...) 
[reference_definition] 
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列,并且它必须被索引。

PHP 相关文章推荐
7个超级实用的PHP代码片段
Jul 11 PHP
深入理解require与require_once与include以及include_once的区别
Jun 05 PHP
php获取文件大小的方法
Feb 26 PHP
PHP的password_hash()使用实例
Mar 17 PHP
利用switch语句进行多选一判断的实例代码
Nov 14 PHP
php mysql实现mysql_select_db选择数据库
Dec 30 PHP
thinkPHP框架实现图像裁剪、缩放、加水印的方法
Mar 14 PHP
PHP+JQUERY操作JSON实例
Mar 23 PHP
[原创]PHP实现SQL语句格式化功能的方法
Jul 28 PHP
PHP获取本周所有日期或者最近七天所有日期的方法
Jun 20 PHP
Laravel 自带的Auth验证登录方法
Sep 30 PHP
php实现统计IP数及在线人数的示例代码
Jul 22 PHP
php生成文件
Jan 15 #PHP
MYSQL环境变量设置方法
Jan 15 #PHP
PHP has encountered an Access Violation
Jan 15 #PHP
PHP5 安装方法
Jan 15 #PHP
安装APACHE
Jan 15 #PHP
php5.2时间相差8小时
Jan 15 #PHP
isset和empty的区别
Jan 15 #PHP
You might like
PHP如何抛出异常处理错误
2011/03/02 PHP
Laravel 5框架学习之向视图传送数据(进阶篇)
2015/04/08 PHP
windows平台中配置nginx+php环境
2015/12/06 PHP
实例介绍PHP中zip_open()函数用法
2019/02/15 PHP
JS获取随机数函数可自定义最小值最大值
2014/05/08 Javascript
jQuery+ajax中getJSON() 用法实例
2014/12/22 Javascript
jQuery使用之设置元素样式用法实例
2015/01/19 Javascript
js简单工厂模式用法实例
2015/06/30 Javascript
HTML5基于Tomcat 7.0实现WebSocket连接并实现简单的实时聊天
2016/10/31 Javascript
javascript实现秒表计时器的制作方法
2017/02/16 Javascript
微信小程序 滚动到某个位置添加class效果实现代码
2017/04/19 Javascript
基于JS实现限时抢购倒计时间表代码
2017/05/09 Javascript
详解angular 中的自定义指令之详解API
2017/06/20 Javascript
HTML5开发Kinect体感游戏的实例应用
2017/09/18 Javascript
koa2实现登录注册功能的示例代码
2018/12/03 Javascript
解决element ui select下拉框不回显数据问题的解决
2019/02/20 Javascript
JavaScript实现随机点名器
2020/03/25 Javascript
[55:02]2014 DOTA2国际邀请赛中国区预选赛 HGT VS Orenda
2014/05/21 DOTA
[58:25]VP vs RNG 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/17 DOTA
python并发编程 Process对象的其他属性方法join方法详解
2019/08/20 Python
使用python实现哈希表、字典、集合操作
2019/12/22 Python
python3 实现调用串口功能
2019/12/26 Python
Python描述符descriptor使用原理解析
2020/03/21 Python
Python 如何对文件目录操作
2020/07/10 Python
Python基于xlrd模块处理合并单元格
2020/07/28 Python
Python接收手机短信的代码整理
2020/08/02 Python
澳大利亚厨房和家用电器购物网站:Bing Lee
2021/01/11 全球购物
教师求职推荐信范文
2013/11/20 职场文书
年检委托书
2014/08/30 职场文书
会计人员演讲稿
2014/09/11 职场文书
保安2014年终工作总结
2014/12/06 职场文书
2014年妇幼保健工作总结
2014/12/08 职场文书
成事在人观后感
2015/06/16 职场文书
springboot集成flyway自动创表的详细配置
2021/06/26 Java/Android
nginx日志格式分析和修改
2022/04/28 Servers
Mysql中@和@@符号的详细使用指南
2022/06/05 MySQL