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

数据库课程表怎么建(数据库创建学生表,课程表,成绩表,教师表)p id 2LMHR4Q1 在本教程中 你将学习如何使用 MySQL CREATE TABLE 语句在数据库中创建新表 p p class f center p

大家好,我是讯享网,很高兴认识大家。




讯享网

 <p id="2LMHR4Q1">在本教程中,你将学习如何使用MySQL CREATE TABLE语句在数据库中创建新表。</p><p class="f_center"><img src="https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2F2024%2F0426%2F7fe9c255j00scjgsp002fd000v900fmp.jpg&thumbnail=660x&quality=80&type=jpg"/><br/><br/></p><p id="2LMHR4Q5">CREATE TABLE语句允许你在数据库中创建一个新表。</p><p id="2LMHR4Q6"><strong>CREATE TABLE语句的基本语法</strong></p><p id="2LMHR4Q7">CREATE TABLE [IFNOT EXISTS] table_name(</p><p id="2LMHR4Q8">column1 datatype constraints,</p><p id="2LMHR4Q9">column2 datatype constraints,</p><p id="2LMHR4QB">) ENGINE=storage_engine;</p><p id="2LMHR4QC">在此语法中:</p><p><ul><li id="2LMHR4SD">table_name:这是要创建的表的名称。</li><li id="2LMHR4SE">column1、column2等:表中列的名称。</li><li id="2LMHR4SF">datatype:每列的数据,如INT、VARCHAR、DATE等。</li><li id="2LMHR4SG">constraints:这些是可选的约束,如NOT NULL、UNIQUE、PRIMARY KEY和FOREIGN KEY。</li></ul></p><p id="2LMHR4QD">如果创建的表的名称已存在于数据库中,则会出现错误。为了避免出现错误,可以使用IF NOT EXISTS选项。</p><p id="2LMHR4QE">在MySQL中,每个表都有一个存储引擎,如InnoDB或MyISAM。ENGINE子句允许你指定表的存储引擎。</p><p id="2LMHR4QF">如果没有明确指定存储引擎,MySQL将使用默认的存储引擎InnoDB。</p><p id="2LMHR4QG">InnoDB从MySQL 5.5版本开始成为默认的存储引擎。InnoDB存储引擎提供了关系数据库管理系统的几个优点,包括ACID事务支持、引用完整性和崩溃恢复。在早期版本中,MySQL使用MyISAM作为默认存储引擎。</p><p id="2LMHR4QH"><strong>MySQL CREATE TABLE语句示例</strong></p><p id="2LMHR4QI">让我们举一些创建新表的例子。</p><p id="2LMHR4QJ"><strong>CREATE</strong><strong>TABLE基本语句示例</strong></p><p id="2LMHR4QK">以下示例使用CREATE TABLE语句创建一个名为tasks的新表:</p><p id="2LMHR4QL">CREATE TABLE tasks (</p><p id="2LMHR4QM">id INT PRIMARY KEY,</p><p id="2LMHR4QN">title VARCHAR(255) NOT NULL,</p><p id="2LMHR4QO">start_date DATE,</p><p id="2LMHR4QP">due_date DATE</p><p id="2LMHR4QR">tasks表有四列:</p><p><ul><li id="2LMHR4SH">id是一个INT列,用作主键列。</li><li id="2LMHR4SI">title是VARCHAR列,不能为NULL。</li><li id="2LMHR4SJ">start_date和end_date是date列,可以为NULL。</li></ul></p><p id="2LMHR4QS">要执行CREATETABLE语句:</p><p id="2LMHR4QT">首先,使用具有CREATE权限的帐户从终端使用MySQL命令登录MySQL服务器:</p><p id="2LMHR4QU">mysql -u root -p</p><p id="2LMHR4QV">它将提示你输入密码:</p><p id="2LMHR4R0">输入密码:</p><p id="2LMHR4R1">接下来,创建一个名为test的新数据库:</p><p id="2LMHR4R2">CREATE DATABASE test;</p><p id="2LMHR4R3">如果数据库已经存在,可以在执行上述语句之前先将其删除:</p><p id="2LMHR4R4">DROP DATABASE test;</p><p id="2LMHR4R5">然后,选择要使用的测试数据库:</p><p id="2LMHR4R6">USE test;</p><p id="2LMHR4R7">之后,执行CREATE TABLE语句:</p><p id="2LMHR4R8">CREATE TABLE tasks (</p><p id="2LMHR4R9">id INT PRIMARY KEY,</p><p id="2LMHR4RA">title VARCHAR(255) NOT NULL,</p><p id="2LMHR4RB">start_date DATE,</p><p id="2LMHR4RC">due_date DATE</p><p id="2LMHR4RE">最后,列出测试数据库中的所有表:</p><p id="2LMHR4RF">SHOW TABLES;</p><p id="2LMHR4RG">输出<br/>:</p><p id="2LMHR4RI">| Tables_in_test |</p><p id="2LMHR4RK">| tasks |</p><p id="2LMHR4RM">1 row in set (0.00 sec)</p><p id="2LMHR4RN">它显示了我们创建的表tasks。<br/></p><p id="2LMHR4RO"><strong>创建带有外键的表示例</strong></p><p id="2LMHR4RP">假设每个task都有一个检查表。要存储任务的检查表,可以创建一个名为checklists的新表,如下所示:</p><p id="2LMHR4RQ">CREATE TABLE checklists(</p><p id="2LMHR4RR">id INT,</p><p id="2LMHR4RS">task_id INT,</p><p id="2LMHR4RT">title VARCHAR(255) NOT NULL,</p><p id="2LMHR4RU">is_completed BOOLEAN NOT NULL DEFAULT FALSE,</p><p id="2LMHR4RV">PRIMARY KEY (id, task_id),</p><p id="2LMHR4S0">FOREIGN KEY (task_id)</p><p id="2LMHR4S1">REFERENCES tasks (id)</p><p id="2LMHR4S2">ON UPDATE RESTRICT</p><p id="2LMHR4S3">ON DELETE CASCADE</p><p id="2LMHR4S5">表checklists有一个由两列组成的主键。因此,我们需要使用表约束来定义主键:</p><p id="2LMHR4S6">PRIMARY KEY (id, task_id)</p><p id="2LMHR4S7">此外,task_id是引用tasks表的id列的外键列,因此,我们使用外键约束来建立这种关系:<br/></p><p id="2LMHR4S8">FOREIGN KEY (task_id)</p><p id="2LMHR4S9">REFERENCES tasks (id)</p><p id="2LMHR4SA">ON UPDATE RESTRICT</p><p id="2LMHR4SB">ON DELETE CASCADE</p> 

讯享网
小讯
上一篇 2025-06-08 12:20
下一篇 2025-05-05 19:35

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/167895.html