找到關於 MySQLi 的4219 篇文章

如何在現有 MySQL 表的多列上設定主鍵?

Syed Javed
更新於 2020年6月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 表的多列上設定主鍵?

George John
更新於 2019年7月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年6月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年6月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年6月19日 11:52:38

344 次瀏覽

我們可以使用 ALTER TABLE 語句將 PRIMARY KEY 約束應用於現有 MySQL 表的列。語法ALTER TABLE table_name MODIFY colum_name datatype PRIMARY KEY;                  或 ALTER TABLE table_name ADD PRIMARY KEY (colum_name); 假設我們有以下名為 ‘Player’ 的表,我們想將 PRIMARY KEY 約束新增到 ‘ID’ 列,那麼可以使用 ALTER TABLE 命令如下所示:mysql> DESCRIBE Player; +-------+-------------+------+-----+---------+-------+ | Field | Type        | Null | Key | Default | Extra | ... 閱讀更多

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

Paul Richard
更新於 2020年6月19日 11:52:12

224 次瀏覽

眾所周知,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年6月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 | ... 閱讀更多

如何建立多列 UNIQUE 索引?

Sai Subramanyam
更新於 2020年1月28日 06:26:06

76 次瀏覽

要建立多列 UNIQUE 索引,我們需要在多列上指定索引名稱。以下示例將在 ‘employee’ 表的 ‘empid’,’first_name’,’last_name’ 列上建立名為 ‘id_fname_lname’ 的多列索引:mysql> Create UNIQUE INDEX id_fname_lname on employee(empid, first_name, last_name); Query OK, 0 rows affected (0.41 sec) Records: 0 Duplicates: 0 Warnings: 0 mysql> describe employee; +------------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +------------+-------------+------+-----+---------+-------+ | empid | int(11) | YES | MUL | NULL | | | first_name | varchar(20) | YES | | NULL | | | ... 閱讀更多

如何從 MySQL 表中刪除 UNIQUE 約束?

George John
更新於 2020年1月28日 06:27:37

5K+ 次瀏覽

要從 MySQL 表中刪除 UNIQUE 約束,首先必須檢查在表上由 UNIQUE 約束建立的索引的名稱。我們知道 SHOW INDEX 語句用於此目的。SHOW INDEX 語句的結果集中的 ‘key_name’ 包含索引的名稱。現在,可以使用 DROP INDEX 語句或 ALTER TABLE 語句刪除 UNIQUE 約束。兩種語句的語法如下:語法DROP INDEX index_name ON table_name; 或 ALTER TABLE table_name DROP INDEX index_name; 示例假設我們有... 閱讀更多

廣告