本教程操作环境:windows7系统、mysql8.0.22版,dell g3电脑。
mysql创建表的方法:
下面以简单的形式来说明create table语句的语法:
create table [if not exists] table_name( column_list) engine=table_type;
首先,指定要在create table子句之后创建的表的名称。表名在数据库中必须是唯一的。 if not exists是语句的可选部分,允许您检查正在创建的表是否已存在于数据库中。 如果是这种情况,mysql将忽略整个语句,不会创建任何新的表。 强烈建议在每个create table语句中使用if not exists来防止创建已存在的新表而产生错误。
其次,在column_list部分指定表的列表。字段的列用逗号(,)分隔。我们将在下一节中向您展示如何更详细地列(字段)定义。
第三,需要为engine子句中的表指定存储引擎。可以使用任何存储引擎,如:innodb,myisam,heap,example,csv,archive,merge, federated或ndbcluster。如果不明确声明存储引擎,mysql将默认使用innodb。
注:innodb自mysql 5.5之后成为默认存储引擎。 innodb表类型带来了诸如acid事务,引用完整性和崩溃恢复等关系数据库管理系统的诸多好处。在以前的版本中,mysql使用myisam作为默认存储引擎。
要在create table语句中为表定义列,请使用以下语法:
column_name data_type[size] [not null|null] [default value] [auto_increment]
以上语法中最重要的组成部分是:
column_name指定列的名称。每列具有特定数据类型和大小,例如:varchar(255)。
not null或null表示该列是否接受null值。
default值用于指定列的默认值。
auto_increment指示每当将新行插入到表中时,列的值会自动增加。每个表都有一个且只有一个auto_increment列。
例如:
create table if not exists tasks ( task_id int(11) not null auto_increment, subject varchar(45) default null, start_date date default null, end_date date default null, description varchar(200) default null, primary key (task_id)) engine=innodb;
相关免费学习推荐:mysql视频教程
以上就是mysql怎样创建表的详细内容。