当前位置:网站首页 > 数据科学与大数据 > 正文

数据库课程表怎么建(数据库创建学生表,课程表,成绩表,教师表)



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



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

CREATE TABLE语句的基本语法

CREATE TABLE [IFNOT EXISTS] table_name(

column1 datatype constraints,

column2 datatype constraints,

) ENGINE=storage_engine;

在此语法中:

  • table_name:这是要创建的表的名称。
  • column1、column2等:表中列的名称。
  • datatype:每列的数据,如INT、VARCHAR、DATE等。
  • constraints:这些是可选的约束,如NOT NULL、UNIQUE、PRIMARY KEY和FOREIGN KEY。

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

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

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

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

MySQL CREATE TABLE语句示例

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

CREATETABLE基本语句示例

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

CREATE TABLE tasks (

id INT PRIMARY KEY,

title VARCHAR(255) NOT NULL,

start_date DATE,

due_date DATE

tasks表有四列:

  • id是一个INT列,用作主键列。
  • title是VARCHAR列,不能为NULL。
  • start_date和end_date是date列,可以为NULL。

要执行CREATETABLE语句:

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

mysql -u root -p

它将提示你输入密码:

输入密码:

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

CREATE DATABASE test;

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

DROP DATABASE test;

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

USE test;

之后,执行CREATE TABLE语句:

CREATE TABLE tasks (

id INT PRIMARY KEY,

title VARCHAR(255) NOT NULL,

start_date DATE,

due_date DATE

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

SHOW TABLES;

| Tables_in_test |

| tasks |

1 row in set (0.00 sec)

创建带有外键的表示例

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

CREATE TABLE checklists(

id INT,

task_id INT,

title VARCHAR(255) NOT NULL,

is_completed BOOLEAN NOT NULL DEFAULT FALSE,

PRIMARY KEY (id, task_id),

FOREIGN KEY (task_id)

REFERENCES tasks (id)

ON UPDATE RESTRICT

ON DELETE CASCADE

表checklists有一个由两列组成的主键。因此,我们需要使用表约束来定义主键:

PRIMARY KEY (id, task_id)

FOREIGN KEY (task_id)

REFERENCES tasks (id)

ON UPDATE RESTRICT

ON DELETE CASCADE

到此这篇数据库课程表怎么建(数据库创建学生表,课程表,成绩表,教师表)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • 自动驾驶数据平台开发(自动驾驶数据平台开发流程)2025-05-13 08:09:04
  • 小米手机数据迁移到苹果手机13(小米手机数据迁移到苹果手机需要花多少钱)2025-05-13 08:09:04
  • 小米数据迁移到新手机 微信记录没了(小米数据迁移到新手机 微信记录没了怎么回事)2025-05-13 08:09:04
  • sqlldr导入数据不全(sqlldr导入大量文件的数据)2025-05-13 08:09:04
  • spss27.0怎么做数据分析(用spss简单的数据分析)2025-05-13 08:09:04
  • iotdb数据库查询语句(数据库查询out of memory)2025-05-13 08:09:04
  • 自动驾驶数据(自动驾驶数据标注工作怎么样)2025-05-13 08:09:04
  • 自动驾驶数据集(自动驾驶数据集的研究方向)2025-05-13 08:09:04
  • orecal数据库(orecal数据库招标)2025-05-13 08:09:04
  • 数据库课程设计实例100例(数据库课程设计怎么做操作流程)2025-05-13 08:09:04
  • 全屏图片