mysql怎样创建表

MysqL创建表的方法:首先指定要在CREATE TABLE子句之后创建的表的名称;然后在【column_list】部分指定表的列表;最后需要为engine子句中的表指定存储引擎。

本教程操作环境: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 NULLNULL表示该列是否接受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视频教程

相关文章

前言 通常情况下,我们需要改什么地方就备份什么地方就可以了...
前言 日常开发中,可能会用到数据库的自定义函数/存储过程,...
前言 开发中我们经常会用到行转列,这里记录一下我在项目中实...
前言 通常情况下,全文检索引擎我们一般会用ES组件(传送门:...
前言 项目中虽然有ORM映射框架来帮我们拼写SQL,简化开发过程...
前言 最近需要写联表多字段update更新语句,发现不同的数据库...