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中常用数组处理方法实例分析
Aug 30 PHP
php dirname(__FILE__) 获取当前文件的绝对路径
Jun 28 PHP
基于PHP CURL获取邮箱地址的详解
Jun 03 PHP
深入PHP许愿墙模块功能分析
Jun 25 PHP
PHP遍历并打印指定目录下所有文件实例
Feb 10 PHP
纯PHP生成的一个树叶图片画图例子
Apr 16 PHP
php 类中的常量、静态属性、非静态属性的区别
Apr 09 PHP
thinkPHP5分页功能实现方法分析
Oct 25 PHP
Laravel如何使用Redis共享Session
Feb 23 PHP
记录Yii2框架开发微信公众号遇到的问题及解决方法
Jul 20 PHP
PHP Swoole异步Redis客户端实现方法示例
Oct 24 PHP
PHP Beanstalkd消息队列的安装与使用方法实例详解
Feb 21 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
整理的9个实用的PHP库简介和下载
2010/11/09 PHP
PHP图片处理之使用imagecopy函数添加图片水印实例
2014/11/19 PHP
PHP判断上传文件类型的解决办法
2015/10/20 PHP
PHP实现阿里大鱼短信验证的实例代码
2017/07/10 PHP
购物车实现的几种方式优缺点对比
2018/05/02 PHP
jQuery.get、jQuery.getJSON、jQuery.post无法返回JSON问题的解决方法
2011/07/28 Javascript
JavaScript高级程序设计阅读笔记(十六) javascript检测浏览器和操作系统-detect.js
2012/08/14 Javascript
js关闭子窗体刷新父窗体实现方法
2012/12/04 Javascript
jQuery实现当按下回车键时绑定点击事件
2014/01/28 Javascript
Js冒泡事件详解及阻止示例
2014/03/21 Javascript
jQuery中dom元素上绑定的事件详解
2015/04/24 Javascript
js禁止页面刷新与后退的方法
2015/06/08 Javascript
js实现滚动条滚动到某个位置便自动定位某个tr
2021/01/20 Javascript
javascript html5轻松实现拖动功能
2017/03/01 Javascript
Angular.Js中过滤器filter与自定义过滤器filter实例详解
2017/05/08 Javascript
webpack开发跨域问题解决办法
2017/08/03 Javascript
解决angularjs service中依赖注入$scope报错的问题
2018/10/02 Javascript
微信小程序自定义可滑动顶部TabBar选项卡实现页面切换功能示例
2019/05/14 Javascript
详解如何搭建mpvue框架搭配vant组件库的小程序项目
2019/05/16 Javascript
JS如何定义用字符串拼接的变量
2020/07/11 Javascript
ES6的循环与可迭代对象示例详解
2021/01/31 Javascript
[06:36]吞吞映像top1
2014/06/20 DOTA
Python元组操作实例分析【创建、赋值、更新、删除等】
2017/07/24 Python
Python实现简单的语音识别系统
2017/12/13 Python
python写一个md5解密器示例
2018/02/23 Python
基于python的图片修复程序(实现水印去除)
2018/06/04 Python
Python的log日志功能及设置方法
2019/07/11 Python
python中的测试框架
2020/11/13 Python
韩国CJ食品专卖网:CJonmart
2016/09/11 全球购物
Book Depository澳大利亚:世界领先的专业在线书店之一
2018/12/27 全球购物
中医药大学毕业生自荐信
2013/11/08 职场文书
廉洁教育学习材料
2014/05/19 职场文书
考试没考好检讨书(精选篇)
2014/11/16 职场文书
实习单位指导教师评语
2014/12/30 职场文书
监察建议书
2015/02/04 职场文书
Golang gRPC HTTP协议转换示例
2022/06/16 Golang