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中XMLHttpRequest(Ajax)不能设置自定义的Referer的解决方法
Nov 26 PHP
php表单请求获得数据求和示例
May 15 PHP
destoon实现调用热门关键字的方法
Jul 15 PHP
PHP MySql增删改查的简单实例
Jun 21 PHP
Thinkphp框架开发移动端接口(1)
Aug 18 PHP
PHP实现页面静态化的超简单方法
Sep 06 PHP
YII框架中搜索分页jQuery写法详解
Dec 19 PHP
PHP实现生成模糊图片的方法示例
Dec 21 PHP
php中错误处理操作实例分析
Aug 23 PHP
gearman中任务的优先级和返回状态实例分析
Feb 27 PHP
gearman中worker常驻后台,导致MySQL server has gone away的解决方法
Feb 27 PHP
php下的原生ajax请求用法实例分析
Feb 28 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
yii框架通过控制台命令创建定时任务示例
2014/04/30 PHP
Yii视图CGridView实现操作按钮定义地址示例
2016/07/14 PHP
Javascript面象对象成员、共享成员变量实验
2010/11/19 Javascript
分别用marquee和div+js实现首尾相连循环滚动效果,仅3行代码
2011/09/21 Javascript
JQuery 返回布尔值Is()条件判断方法代码
2012/05/14 Javascript
Javascript的时间戳和php的时间戳转换注意事项
2013/04/12 Javascript
求数组最大最小值方法适用于任何数组
2013/08/16 Javascript
js倒计时小程序
2013/11/05 Javascript
谈谈Jquery ajax中success和complete有哪些不同点
2015/11/20 Javascript
理解JavaScript表单的基础知识
2016/01/25 Javascript
BootStrap中Tab页签切换实例代码
2016/05/30 Javascript
百度搜索框智能提示案例jsonp
2016/11/28 Javascript
谈谈jQuery之Deferred源码剖析
2016/12/19 Javascript
AngularJs 延时器、计时器实例代码
2017/09/16 Javascript
AngularJS 将再发布一个重要版本 然后进入长期支持阶段
2018/01/31 Javascript
js拖动滑块和点击水波纹效果实例代码
2018/10/16 Javascript
简单说说如何使用vue-router插件的方法
2019/04/08 Javascript
nodejs通过钉钉群机器人推送消息的实现代码
2019/05/05 NodeJs
vue获取form表单的值示例
2019/10/29 Javascript
JavaScript实现简单的图片切换功能(实例代码)
2020/04/10 Javascript
[04:11]2014DOTA2国际邀请赛 CIS遗憾出局梦想不灭
2014/07/09 DOTA
python生成词云的实现方法(推荐)
2017/06/13 Python
django文档学习之applications使用详解
2018/01/29 Python
python如何为被装饰的函数保留元数据
2018/03/21 Python
python正则表达式去除两个特殊字符间的内容方法
2018/12/24 Python
python实现银行实战系统
2020/02/26 Python
css3 边框、背景、文本效果的实现代码
2018/03/21 HTML / CSS
Canvas实现放大镜效果完整案例分析(附代码)
2020/11/26 HTML / CSS
char型变量中能不能存贮一个中文汉字
2015/07/08 面试题
如何写一份好的自荐信
2014/01/02 职场文书
创业计划书的写作技巧及要点
2014/01/31 职场文书
硕士学位论文评语
2014/12/31 职场文书
2015年党风廉政承诺书
2015/01/22 职场文书
2016年领导干部廉政承诺书
2016/03/24 职场文书
nginx.conf配置文件结构小结
2022/04/08 Servers
前端传参数进行Mybatis调用mysql存储过程执行返回值详解
2022/08/14 MySQL