概述
一、MySQL创建表语法
1.1 创建表
若要在数据库中创建新表,请使用MySQL CREATE TABLE声明。这个CREATE TABLE语句是MySQL中最复杂的语句之一。
##1.1CREATE TABLE声明:
CREATE TABLE [IF NOT EXISTS] table_name (
column_name data_type(length) [NOT NULL] [DEFAULT value] [AUTO_INCREMENT],
PRIMARY KEY (col1,col2,...)
) ENGINE=InnoDB CHARSET=utf8;
让我们更详细地研究一下语法。
-
CREATE TABLE:创建数据表
-
IF NOT EXISTS:是一个可选子句,允许您检查正在创建的表在数据库中是否已经存在。如果是这样的话,MySQL将忽略整个语句,并且不会创建任何新表。 强烈建议您使用IF NOT EXISTS在每一个CREATE TABLE语句,以避免创建已存在的新表时出错。
-
table_name:数据表的名字,表名在数据库中必须是唯一的。
-
column_name:指定列的名称。
-
data_type:数据类型,每一列都有一个特定的数据类型和最大长度,例如,VARCHAR(255)
-
NOT NULL:指示列不允许NULL,在操作数据库时如果输入该字段的数据为NULL ,就会报错。
-
DEFAULT value:用于指定列的默认值。
-
AUTO_INCREMENT:定义列为自增的属性,一般用于主键,数值会自动加1。
-
PRIMARY KEY关键字:用于定义列为主键。 您可以使用多列来定义主键,列间以逗号分隔。
-
ENGINE:设置存储引擎,如InnoDB和MyISAM。如果没有显式声明存储引擎,MySQL将默认使用InnoDB。
-
CHARSET 设置编码
-
数据库类型:
1. int:整数类型
* age int,
2. double:小数类型
* score double(5,2)
3. date:日期,只包含年月日,yyyy-MM-dd
4. datetime:日期,包含年月日时分秒 yyyy-MM-dd HH:mm:ss
5. timestamp:时间错类型 包含年月日时分秒 yyyy-MM-dd HH:mm:ss
如果将来不给这个字段赋值,或赋值为null,则默认使用当前的系统时间,来自动赋值
6. varchar:字符串
name varchar(20):姓名最大20个字符
zhangsan 8个字符 张三 2个字符
具体操作:创建student表包含id,name,birthday,age,insert_time字段 use db3; CREATE TABLE student ( id INT, name VARCHAR(32), birthday DATE,score double(4,1), insert_time timestamp);
1.2 复制表:
语法:
create table 表名 like 被复制的表名;
具体操作:
使用数据库db3新创建一个表格(student1)并把(student)的数据复制给他
use db3;
CREATE TABLE student1 like student ;
最后
以上就是复杂鸡为你收集整理的MySQL-12 DDL之创建数据表一、MySQL创建表语法二、MySQL序列三、通过命令提示符创建表四、使用PHP脚本创建数据表的全部内容,希望文章能够帮你解决MySQL-12 DDL之创建数据表一、MySQL创建表语法二、MySQL序列三、通过命令提示符创建表四、使用PHP脚本创建数据表所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复