找到 4379 篇文章 关于 MySQL

如何向现有 MySQL 表的字段添加外键约束?

Ankitha Reddy
更新于 2019-07-30 22:30:21

2K+ 浏览量

我们可以使用 ALTER TABLE 语句向现有 MySQL 表的列添加外键约束。语法:ALTER TABLE 表名 ADD FOREIGN KEY (列名) REFERENCES 带主键的表(列名); 例如,假设我们想在 ‘Orders1’ 表上添加一个外键约束,引用具有 ‘Cust_Id’ 主键列的 ‘Customer’ 表。可以使用以下查询来完成: mysql> Alter table orders1 add FOREIGN KEY(Cust_id) REFERENCES Customer(Cust_id); Query OK, 0 rows affected (0.21 sec) Records: 0 Duplicates: 0 Warnings: 0 mysql> ... 阅读更多

如何删除应用于现有 MySQL 表多个列的复合主键约束?

Govinda Sai
更新于 2020-06-19 11:56:51

4K+ 浏览量

我们可以使用 DROP 关键字和 ALTER TABLE 语句从现有表的多个列中删除复合主键约束。例如,假设我们有一个名为 ‘Room_allotment’ 的表,它在 ‘ID’ 和 ‘RoomNo’ 列上有一个复合主键约束,如下所示:mysql> describe room_allotment; +--------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +--------+-------------+------+-----+---------+-------+ | id | int(11) | NO | PRI | 0 | | | Name | varchar(20) | NO | PRI | | | +--------+-------------+------+-----+---------+-------+ 2 rows in ... 阅读更多

如何在现有 MySQL 表的多个列上设置主键?

Syed Javed
更新于 2020-06-19 11:56:21

10K+ 浏览量

我们可以使用 ADD 关键字和 ALTER TABLE 语句在现有表的多个列上设置主键约束。例如,假设我们有一个名为 ‘Room_allotment’ 的表,如下所示:mysql> Create table Room_allotment(Id Int, Name Varchar(20), RoomNo Int); Query OK, 0 rows affected (0.20 sec) mysql> Describe Room_allotment; +--------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +--------+-------------+------+-----+---------+-------+ | Id | int(11) | YES | | NULL | | | Name | varchar(20) | YES | | NULL | | ... 阅读更多

如何在 MySQL 表的多个列上设置主键?

George John
更新于 2019-07-30 22:30:21

830 浏览量

实际上,MySQL 允许我们在多个列上设置主键。这样做的好处是我们可以将多个列作为一个整体来操作。例如,我们创建了 allotment 表,在多个列上定义了复合主键,如下所示: mysql> Create table allotment( RollNo Int, Name Varchar(20), RoomNo Int, PRIMARY KEY(RollNo, RoomNo)); Query OK, 0 rows affected (0.23 sec) mysql> Describe allotment; +--------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +--------+-------------+------+-----+---------+-------+ | RollNo ... 阅读更多

如果尝试从 AUTO_INCREMENT 列删除主键约束会发生什么?

Arushi
更新于 2020-06-19 11:53:40

203 浏览量

众所周知,AUTO_INCREMENT 列必须具有主键约束,因此,当我们尝试从 AUTO_INCREMENT 列删除主键约束时,MySQL 会返回有关不正确的表定义的错误消息。下面的示例将演示这一点:例如,假设我们有 ‘Accounts’ 表,其描述如下:mysql> Describe accounts; +--------+-------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +--------+-------------+------+-----+---------+----------------+ | Sr | int(10) | NO | PRI | NULL | auto_increment | ... 阅读更多

如何从现有 MySQL 表的列中删除主键约束?

Rishi Raj
更新于 2020-06-19 11:53:03

5K+ 浏览量

我们可以使用 DROP 关键字和 ALTER TABLE 语句从现有表的列中删除主键约束。例如,假设我们有一个名为 ‘Player’ 的表,在 ‘ID’ 列上有一个主键约束,如下所示:mysql> DESCRIBE Player; +-------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+-------------+------+-----+---------+-------+ | ID | int(11) | NO | PRI | NULL | | | Name | varchar(20) | YES | | NULL | | +-------+-------------+------+-----+---------+-------+ 2 rows in ... 阅读更多

如何将主键约束应用于现有 MySQL 表的字段?

Vikyath Ram
更新于 2020-06-19 11:52:38

344 浏览量

我们可以使用 ALTER TABLE 语句将主键约束应用于现有 MySQL 表的列。语法:ALTER TABLE 表名 MODIFY 列名 数据类型 PRIMARY KEY; 或者 ALTER TABLE 表名 ADD PRIMARY KEY (列名); 假设我们有以下名为 ‘Player’ 的表,我们想将主键约束添加到 ‘ID’ 列,那么可以使用 ALTER TABLE 命令如下所示:mysql> DESCRIBE Player; +-------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | ... 阅读更多

如何在不使用 PRIMARY KEY 关键字的情况下定义 MySQL 表的主键列?

Paul Richard
更新于 2020-06-19 11:52:12

224 浏览量

众所周知,主键列必须具有唯一值且不能为 NULL 值,因此,如果我们定义一个同时具有 UNIQUE 和 NOT NULL 约束的列,则该列将成为主键列。例如,在这个例子中,我们创建了一个名为 ‘Student123’ 的表,并定义了具有 UNIQUE 和 NOT NULL 约束的 ‘RollNo’ 列。现在,通过描述该表,我们可以看到 ‘RollNo’ 是主键列。mysql> Create table Student123(RollNo INT UNIQUE NOT NULL, Name varchar(20)); Query OK, 0 rows affected (0.25 sec) mysql> DESCRIBE Student123; +--------+-------------+------+-----+---------+-------+ | Field | Type | ... 阅读更多

如果多次在同一列上添加 UNIQUE 约束会发生什么?

Swarali Sree
更新于 2020-06-19 11:51:15

527 浏览量

如果我们多次在同一列上添加UNIQUE约束,MySQL会在该列上创建与UNIQUE约束添加次数相同的索引。例如,假设我们有一个名为“employee”的表,其中“empid”列具有UNIQUE约束。可以使用以下查询进行检查:mysql> Describe employee; +------------+-------------+------+-----+---------+-------+ | Field      | Type        | Null | Key | Default | Extra | +------------+-------------+------+-----+---------+-------+ | empid      | int(11)     | YES  | UNI | NULL    |       | | ... 阅读更多

如何删除多列UNIQUE索引?

Samual Sam
更新于 2020年6月19日 11:50:48

74 次查看

删除多列UNIQUE索引的方法与从表中删除UNIQUE约束的方法相同。例如,以下查询从“employee”表中删除了多列UNIQUE索引:mysql> DROP index id_fname_lname on employee; Query OK, 0 rows affected (0.30 sec) Records: 0 Duplicates: 0 Warnings: 0 可以从以下查询的结果集中观察到UNIQUE索引的删除:mysql> show index from employee; Empty set (0.00 sec) mysql> describe employee; +------------+-------------+------+-----+---------+-------+ | Field      | Type        | Null | Key | Default | Extra | ... 阅读更多

广告
© . All rights reserved.