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 删除记录实现代码
Mar 12 PHP
PHP 中文处理技巧
Apr 25 PHP
snoopy 强大的PHP采集类使用实例代码
Dec 09 PHP
需要注意的几个PHP漏洞小结
Feb 05 PHP
php中根据变量的类型 选择echo或dump
Jul 05 PHP
php中substr()函数参数说明及用法实例
Nov 15 PHP
php通过array_shift()函数移除数组第一个元素的方法
Mar 18 PHP
php中文繁体和简体相互转换的方法
Mar 21 PHP
用PHP代码给图片加水印
Jul 01 PHP
PHP加密解密函数详解
Oct 28 PHP
yii,CI,yaf框架+smarty模板使用方法
Dec 29 PHP
php创建类并调用的实例方法
Sep 25 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 字符串加密函数(在指定时间内加密还原字符串,超时无法还原)
2010/04/28 PHP
PHP中魔术变量__METHOD__与__FUNCTION__的区别
2014/09/29 PHP
详解WordPress中添加和执行动作的函数使用方法
2015/12/29 PHP
PHP设计模式(三)建造者模式Builder实例详解【创建型】
2020/05/02 PHP
jquery学习笔记二 实现可编辑的表格
2010/04/09 Javascript
Chrome中模态对话框showModalDialog返回值问题的解决方法
2010/05/25 Javascript
js 利用className得到对象的实现代码
2011/11/15 Javascript
深入理解JavaScript 闭包究竟是什么
2013/04/12 Javascript
javascript调试过程中找不到哪里出错的可能原因
2013/12/16 Javascript
获取select元素被选中的文本内容的js代码
2014/01/29 Javascript
Javascript中的String对象详谈
2014/03/03 Javascript
JavaScript通过元素的ID和name设置样式
2014/07/08 Javascript
非jQuery实现照片散落桌子上,单击放大的LightBox效果
2014/11/28 Javascript
text-align:justify实现文本两端对齐 兼容IE
2015/08/19 Javascript
Vue概念及常见命令介绍(1)
2016/12/08 Javascript
详谈js中数组(array)和对象(object)的区别
2017/02/27 Javascript
js模仿微信朋友圈计算时间显示几天/几小时/几分钟/几秒之前
2017/04/27 Javascript
js分页之前端代码实现和请求处理
2017/08/04 Javascript
webpack4.x打包过程详解
2018/07/18 Javascript
nuxt.js中间件实现拦截权限判断的方法
2018/11/21 Javascript
vue el-table实现行内编辑功能
2019/12/11 Javascript
[01:04:31]DOTA2-DPC中国联赛定级赛 iG vs Magma BO3第二场 1月8日
2021/03/11 DOTA
Python利用带权重随机数解决抽奖和游戏爆装备问题
2016/06/16 Python
python让列表倒序输出的实例
2018/06/25 Python
Python3获取电脑IP、主机名、Mac地址的方法示例
2019/04/11 Python
python实现同一局域网下传输图片
2020/03/20 Python
python爬虫判断招聘信息是否存在的实例代码
2020/11/20 Python
css3中less实现文字长阴影(long shadow)
2020/04/24 HTML / CSS
HTML5 标准将把互联网视频扔回到黑暗时代
2010/02/10 HTML / CSS
临床医学系毕业生推荐信
2013/11/09 职场文书
弘扬雷锋精神活动演讲稿
2014/03/04 职场文书
青年安全生产示范岗事迹材料
2014/05/04 职场文书
英语教师求职信
2014/06/16 职场文书
党的群众路线教育实践活动个人对照检查材料范文
2014/09/25 职场文书
股权转让协议书
2014/12/07 职场文书
使用Canvas绘制一个游戏人物属性图
2022/03/25 Javascript