找到 4379 篇文章 適用於 MySQL

如何在現有 MySQL 表的欄位中新增 FOREIGN KEY 約束?

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

2K+ 閱讀量

我們可以使用 ALTER TABLE 語句在現有 MySQL 表的列上新增 FOREIGN KEY 約束。語法 ALTER TABLE 表名 ADD FOREIGN KEY (列名) REFERENCES 具有主鍵的表(列名); 例如 假設我們想要在表“Orders1”上新增一個 FOREIGN KEY 約束,引用具有“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 表的多個列上的複合 PRIMARY KEY 約束?

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

4K+ 閱讀量

我們可以使用 DROP 關鍵字和 ALTER TABLE 語句從現有表的多個列中刪除複合 PRIMARY KEY 約束。例如 假設我們有一個表“Room_allotment”,它在列“ID”和“RoomNo”上具有複合 PRIMARY KEY 約束,如下所示: mysql> describe room_allotment; +--------+-------------+------+-----+---------+-------+ | Field  | Type        | Null | Key | Default | Extra | +--------+-------------+------+-----+---------+-------+ | id     | int(11)     | NO   | PRI | 0       |       | | Name   | varchar(20) | NO   | PRI |         ... 閱讀更多

如何在現有 MySQL 表的多個列上設定 PRIMARY KEY?

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

10K+ 閱讀量

我們可以使用 ADD 關鍵字和 ALTER TABLE 語句在現有表的多個列上設定 PRIMARY KEY 約束。例如 假設我們有一個名為“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 表的多個列上設定 PRIMARY KEY?

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

830 閱讀量

實際上,MySQL 允許我們在多個列上設定 PRIMARY KEY。這樣做的優點是我們可以將多個列作為一個實體進行操作。例如 我們建立了表 allotment,在多個列上定義了複合 PRIMARY KEY,如下所示: 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 列刪除 PRIMARY KEY 約束會發生什麼?

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

203 閱讀量

眾所周知,AUTO_INCREMENT 列必須在其上具有 PRIMARY KEY 約束,因此當我們嘗試從 AUTO_INCREMENT 列刪除 PRIMARY KEY 約束時,MySQL 會返回一條關於表定義不正確的錯誤訊息。下面的示例將演示它:例如 假設我們有“Accounts”表,其描述如下: mysql> Describe accounts; +--------+-------------+------+-----+---------+----------------+ | Field  | Type        | Null | Key | Default | Extra          | +--------+-------------+------+-----+---------+----------------+ | Sr     | int(10)     | NO   | PRI | NULL    | auto_increment | ... 閱讀更多

如何從現有 MySQL 表的列中刪除 PRIMARY KEY 約束?

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

5K+ 閱讀量

我們可以使用 DROP 關鍵字和 ALTER TABLE 語句從現有表的列中刪除 PRIMARY KEY 約束。例如 假設我們有一個表“Player”,它在列“ID”上具有 PRIMARY KEY 約束,如下所示: mysql> DESCRIBE Player; +-------+-------------+------+-----+---------+-------+ | Field | Type        | Null | Key | Default | Extra | +-------+-------------+------+-----+---------+-------+ | ID    |  int(11)    | NO   | PRI | NULL    |       | | Name  | varchar(20) | YES  |     | NULL    |       | +-------+-------------+------+-----+---------+-------+ 2 rows in ... 閱讀更多

如何將 PRIMARY KEY 約束應用於現有 MySQL 表的欄位?

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

344 閱讀量

我們可以使用 ALTER TABLE 語句在現有 MySQL 表的列上應用 PRIMARY KEY 約束。語法 ALTER TABLE 表名 MODIFY 列名 資料型別 PRIMARY KEY;                   或 ALTER TABLE 表名 ADD PRIMARY KEY (列名); 假設我們有以下名為“Player”的表,並且我們想要在列“ID”上新增 PRIMARY KEY 約束,那麼可以使用 ALTER TABLE 命令如下完成: mysql> DESCRIBE Player; +-------+-------------+------+-----+---------+-------+ | Field | Type        | Null | Key | Default | Extra | ... 閱讀更多

如何不使用 PRIMARY KEY 關鍵字定義 MySQL 表的列為主鍵?

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

223 閱讀量

眾所周知,PRIMARY KEY 列必須具有唯一值並且不能具有空值,因此,如果我們將列定義為 UNIQUE 和 NOT NULL 約束,則該列將成為 PRIMARY KEY 列。例如 在此示例中,我們建立了一個表“Student123”,並使用 UNIQUE 和 NOT NULL 約束定義了列“RollNo”。現在,透過描述該表,我們可以看到“RollNo”是 PRIMARY KEY 列。 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

526 閱讀量

當我們多次對同一列新增 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-06-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 | ... 閱讀更多

廣告