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 相关文章推荐
我的论坛源代码(八)
Oct 09 PHP
php强制下载类型的实现代码
Apr 21 PHP
第二章 PHP入门基础之php代码写法
Dec 30 PHP
深入解析PHP中的(伪)多线程与多进程
Jul 01 PHP
ThinkPHP中U方法的使用浅析
Jun 13 PHP
PHP生成plist数据的方法
Jun 16 PHP
PHP递归实现层级树状展开
Apr 01 PHP
Laravel如何创建服务器提供者实例代码
Apr 15 PHP
laravel实现上传图片并在页面显示的例子
Oct 14 PHP
thinkphp框架无限级栏目的排序功能实现方法示例
Mar 29 PHP
php+mysql+ajax 局部刷新点赞/取消点赞功能(每个账号只点赞一次)
Jul 24 PHP
PHP常用字符串输出方法分析(echo,print,printf及sprintf)
Mar 09 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
JAVA/JSP学习系列之二
2006/10/09 PHP
PHP XML备份Mysql数据库
2009/05/27 PHP
PHP中list()函数用法实例简析
2016/01/08 PHP
Smarty3配置及入门语法
2017/02/22 PHP
phpQuery采集网页实现代码实例
2020/04/02 PHP
收藏一些不常用,但是有用的代码
2007/03/12 Javascript
判断输入是否为空,获得输入类型的JS代码
2013/10/30 Javascript
JavaScript中this的使用详解
2013/11/08 Javascript
jQuery入门介绍之基础知识
2015/01/13 Javascript
nodejs调用cmd命令实现复制目录
2015/05/04 NodeJs
jquery UI Datepicker时间控件的使用方法(终结版)
2015/11/07 Javascript
学习JavaScript设计模式之责任链模式
2016/01/18 Javascript
全面解析Bootstrap中transition、affix的使用方法
2016/05/30 Javascript
原生JS实现左右箭头选择日期实例代码
2017/03/14 Javascript
基于jQuery对象和DOM对象和字符串之间的转化实例
2017/08/08 jQuery
webpack+vue-cil中proxyTable处理跨域的方法
2018/07/20 Javascript
python类继承用法实例分析
2014/10/10 Python
Python使用scrapy采集数据过程中放回下载过大页面的方法
2015/04/08 Python
讲解Python中运算符使用时的优先级
2015/05/14 Python
简单谈谈Python中的反转字符串问题
2016/10/24 Python
解决vscode python print 输出窗口中文乱码的问题
2018/12/03 Python
Python常见数据结构之栈与队列用法示例
2019/01/14 Python
Python3.4学习笔记之列表、数组操作示例
2019/03/01 Python
用Python从0开始实现一个中文拼音输入法的思路详解
2019/07/20 Python
python常用运维脚本实例小结
2020/02/14 Python
python实现图片横向和纵向拼接
2020/03/05 Python
Python HTMLTestRunner库安装过程解析
2020/05/25 Python
Python进行统计建模
2020/08/10 Python
Cotton On香港网站:澳洲时装连锁品牌
2018/11/01 全球购物
测绘专业大学生职业生涯规划书
2014/02/10 职场文书
数学兴趣小组活动总结
2014/07/08 职场文书
月度优秀员工获奖感言
2014/08/16 职场文书
Django实现WebSocket在线聊天室功能(channels库)
2021/09/25 Python
Go语言 详解net的tcp服务
2022/04/14 Golang
SQL Server中的游标介绍
2022/05/20 SQL Server
win10电脑老是死机怎么办?win10系统老是死机的解决方法
2022/08/05 数码科技