数据库

首页 » 常识 » 预防 » 关于如何在MySQL中创建表,看这篇文章
TUhjnbcbe - 2025/3/9 12:52:00
哪的白癜风医院权威 https://jbk.39.net/yiyuanzaixian/bjzkbdfyy/nvxbdf/

在本教程中,你将学习如何使用MySQLCREATETABLE语句在数据库中创建新表。

CREATETABLE语句允许你在数据库中创建一个新表。

CREATETABLE语句的基本语法

CREATETABLE[IFNOTEXISTS]table_name(

column1datatypeconstraints,

column2datatypeconstraints,

...

)ENGINE=storage_engine;

在此语法中:

table_name:这是要创建的表的名称。

column1、column2等:表中列的名称。

datatype:每列的数据,如INT、VARCHAR、DATE等。

constraints:这些是可选的约束,如NOTNULL、UNIQUE、PRIMARYKEY和FOREIGNKEY。

如果创建的表的名称已存在于数据库中,则会出现错误。为了避免出现错误,可以使用IFNOTEXISTS选项。

在MySQL中,每个表都有一个存储引擎,如InnoDB或MyISAM。ENGINE子句允许你指定表的存储引擎。

如果没有明确指定存储引擎,MySQL将使用默认的存储引擎InnoDB。

InnoDB从MySQL5.5版本开始成为默认的存储引擎。InnoDB存储引擎提供了关系数据库管理系统的几个优点,包括ACID事务支持、引用完整性和崩溃恢复。在早期版本中,MySQL使用MyISAM作为默认存储引擎。

MySQLCREATETABLE语句示例

让我们举一些创建新表的例子。

CREATETABLE基本语句示例

以下示例使用CREATETABLE语句创建一个名为tasks的新表:

CREATETABLEtasks(

idINTPRIMARYKEY,

titleVARCHAR()NOTNULL,

start_dateDATE,

due_dateDATE

);

tasks表有四列:

id是一个INT列,用作主键列。

title是VARCHAR列,不能为NULL。

start_date和end_date是date列,可以为NULL。

要执行CREATETABLE语句:

首先,使用具有CREATE权限的帐户从终端使用MySQL命令登录MySQL服务器:

mysql-uroot-p

它将提示你输入密码:

输入密码:********

接下来,创建一个名为test的新数据库:

CREATEDATABASEtest;

如果数据库已经存在,可以在执行上述语句之前先将其删除:

DROPDATABASEtest;

然后,选择要使用的测试数据库:

USEtest;

之后,执行CREATETABLE语句:

CREATETABLEtasks(

idINTPRIMARYKEY,

titleVARCHAR()NOTNULL,

start_dateDATE,

due_dateDATE

);

最后,列出测试数据库中的所有表:

SHOWTABLES;

输出:

+----------------+

Tables_in_test

+----------------+

tasks

+----------------+1rowinset(0.00sec)

它显示了我们创建的表tasks。

创建带有外键的表示例

假设每个task都有一个检查表。要存储任务的检查表,可以创建一个名为checklists的新表,如下所示:

CREATETABLEchecklists(

idINT,

task_idINT,

titleVARCHAR()NOTNULL,

is_

1
查看完整版本: 关于如何在MySQL中创建表,看这篇文章