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 相关文章推荐
PHP学习之PHP变量
Oct 09 PHP
利用discuz自带通行证整合dedecms的方法以及文件下载
Mar 06 PHP
php框架Phpbean说明
Jan 10 PHP
Linux下 php5 MySQL5 Apache2 phpMyAdmin ZendOptimizer安装与配置[图文]
Nov 18 PHP
php 中英文语言转换类
Sep 07 PHP
Thinkphp模板中使用自定义函数的方法
Sep 23 PHP
Destoon旺旺无法正常显示,点击提示“会员名不存在”的解决办法
Jun 21 PHP
PHP下的Oracle客户端扩展(OCI8)安装教程
Sep 10 PHP
php获取远程文件的内容和大小
Nov 03 PHP
php计划任务之验证是否有多个进程调用同一个job的方法
Dec 07 PHP
win10 apache配置虚拟主机后localhost无法使用的解决方法
Jan 27 PHP
PHP simplexml_load_string()函数实例讲解
Feb 03 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
如何利用http协议发布博客园博文评论
2015/08/03 PHP
深入解析WordPress中加载模板的get_template_part函数
2016/01/11 PHP
thinkphp3.x中session方法的用法分析
2016/05/20 PHP
PHP实现导出excel数据的类库用法示例
2016/10/15 PHP
PHP实现微信小程序人脸识别刷脸登录功能
2018/05/24 PHP
PHP中实现中文字串截取无乱码的解决方法
2018/05/29 PHP
Package.js  现代化的JavaScript项目make工具
2012/05/23 Javascript
jquery datepicker参数介绍和示例
2014/04/15 Javascript
JavaScript极简入门教程(一):基础篇
2014/10/25 Javascript
详解JavaScript逻辑And运算符
2015/12/04 Javascript
js遍历获取表格内数据的方法(必看)
2017/04/06 Javascript
JS实现队列的先进先出功能示例
2017/05/10 Javascript
jquery.validate.js 多个相同name的处理方式
2017/07/10 jQuery
微信小程序使用audio组件播放音乐功能示例【附源码下载】
2017/12/08 Javascript
原生JS实现的碰撞检测功能示例
2018/05/18 Javascript
JavaScript ES2019中的8个新特性详解
2019/02/20 Javascript
微信小程序嵌入腾讯视频源过程详解
2019/08/08 Javascript
解决vue cli使用typescript后打包巨慢的问题
2019/09/30 Javascript
python实现数通设备端口监控示例
2014/04/02 Python
详解Python读取配置文件模块ConfigParser
2017/05/11 Python
python 3.7.4 安装 opencv的教程
2019/10/10 Python
TensorFlow查看输入节点和输出节点名称方式
2020/01/04 Python
Python安装whl文件过程图解
2020/02/18 Python
使用SimpleITK读取和保存NIfTI/DICOM文件实例
2020/07/01 Python
Python库安装速度过慢解决方案
2020/07/14 Python
Python中qutip用法示例详解
2020/10/02 Python
Python对excel的基本操作方法
2021/02/18 Python
CSS3实现线性渐变用法示例代码详解
2020/08/07 HTML / CSS
Python中如何定义一个函数
2016/09/06 面试题
大学新生军训个人的自我评价
2013/10/03 职场文书
外贸采购员求职的自我评价
2013/11/26 职场文书
给老婆的保证书范文
2014/04/28 职场文书
2014乡镇机关党员个人对照检查材料思想汇报
2014/10/09 职场文书
2014年化验员工作总结
2014/11/18 职场文书
2016应届毕业生就业指导课心得体会
2016/01/15 职场文书
教你怎么用python爬取爱奇艺热门电影
2021/05/20 Python