找到 6705 篇文章 關於資料庫

如何建立多列唯一索引?

Sai Subramanyam
更新於 2020-01-28 06:26:06

76 次瀏覽

要建立多列唯一索引,我們需要在多個列上指定索引名稱。以下示例將在 '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 表中刪除唯一約束?

George John
更新於 2020-01-28 06:27:37

5K+ 次瀏覽

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

如何在 MySQL 表上檢查由唯一約束建立的索引?

karthikeya Boyini
更新於 2020-06-19 11:48:25

462 次瀏覽

SHOW INDEX 語句用於檢查在 MySQL 表上由唯一約束建立的索引。語法SHOW INDEX from table_name;示例假設我們有表 'empl',該表在列 'empno' 上具有唯一約束。mysql> describe empl; +--------+-------------+------+-----+---------+-------+ | Field  | Type        | Null | Key | Default | Extra | +--------+-------------+------+-----+---------+-------+ | empno  | int(11)     | YES  | UNI | NULL    |       | | F_name | varchar(20) | YES  |     | NULL    |       | +--------+-------------+------+-----+---------+-------+ 2 rows in set (0.23 sec)現在,正如我們所知 ... 閱讀更多

除了 ALTER TABLE 語句之外,還有哪些語句可用於將唯一約束應用於現有 MySQL 表的欄位?

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

90 次瀏覽

CREATE UNIQUE INDEX 語句也可用於將唯一約束應用於現有 MySQL 表的欄位。其語法如下:CREATE UNIQUE INDEX index_name ON table_name(Column_name);示例假設我們有以下名為 'Test5' 的表,並且我們想向列 'ID' 新增唯一約束,那麼可以使用 CREATE UNIQUE INDEX 命令如下完成:mysql> DESCRIBE TEST5; +-------+-------------+------+-----+---------+-------+ | Field | Type        | Null | Key | Default | Extra | +-------+-------------+------+-----+---------+-------+ | ID    | int(11)     | YES  |   ... 閱讀更多

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

Swarali Sree
更新於 2020-06-19 11:47:43

438 次瀏覽

我們可以使用 ALTER TABLE 語句將唯一約束應用於現有 MySQL 表的列。語法ALTER TABLE table_name MODIFY colum_name datatype UNIQUE;                     或 ALTER TABLE table_name ADD UNIQUE (colum_name);示例假設我們有以下名為 'Test4' 的表,並且我們想向列 'Name' 新增唯一約束,那麼可以使用 ALTER TABLE 命令如下完成:mysql> DESCRIBE test4; +-------+-------------+------+-----+---------+-------+ | Field | Type        | Null | Key | Default | Extra | +-------+-------------+------+-----+---------+-------+ | ID   ... 閱讀更多

如何在具有 NOT NULL 約束的 MySQL 表的字元型別列中插入 NULL 關鍵字作為值?

Kumar Varma
更新於 2020-06-19 11:31:09

175 次瀏覽

完全可以在具有 NOT NULL 約束的字元型別列中插入 NULL 關鍵字作為值,因為 NULL 本身就是一個值。以下示例將展示它:示例假設我們有一個名為 test2 的表,該表具有字元型別列 'Name' 以及其上的 NOT NULL 約束。可以透過 DESCRIBE 語句進行檢查,如下所示:mysql> Describe test2\G *************************** 1. row ***************************   Field: id    Type: int(11)    Null: NO     Key: Default: NULL   Extra: *************************** 2. row ***************************   Field: NAME    Type: varchar(20)    Null: NO     Key: ... 閱讀更多

如何從現有 MySQL 表的列中刪除 NOT NULL 約束?

Lakshmi Srinivas
更新於 2020-06-19 11:29:02

7K+ 次瀏覽

我們可以使用 ALTER TABLE 語句從現有表的列中刪除 NOT NULL 約束。示例假設我們有一個名為 'test123' 的表,該表在列 'ID' 上具有 NOT NULL 約束,如下所示:mysql> DESCRIBE test123; +-------+---------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra    | +-------+---------+------+-----+---------+-------+ | ID    | int(11) | NO   |     |   NULL  |       | | Date  | date    | YES  |     |   NULL  |       | +-------+---------+------+-----+---------+-------+ 2 rows in set (0.04 sec)現在,如果我們 ... 閱讀更多

當我們使用 ALTER TABLE 語句將 NOT NULL 約束應用於包含 NULL 值的列時會發生什麼?

karthikeya Boyini
更新於 2020-06-19 11:26:11

203 次瀏覽

在這種情況下,MySQL 將返回一條關於該列資料截斷的錯誤訊息。以下是演示它的示例:示例假設我們有一個名為 'test2' 的表,該表在第 2 行的列 'ID' 中包含一個 NULL 值。現在,如果我們嘗試將列 ID 宣告為 NOT NULL,則 MySQL 將返回以下錯誤:mysql> Select * from test2; +------+--------+ | ID   | Name   | +------+--------+ | 1    | Gaurav | | NULL | Rahul  | +------+--------+ 2 rows in set (0.00 sec) mysql> ALTER TABLE TEST2 MODIFY ID INT NOT NULL; ERROR 1265 (01000): Data truncated for column 'ID' at row 2

如何將 NOT NULL 約束應用於現有 MySQL 表的列?

Jai Janardhan
更新於 2020-06-19 11:27:51

342 次瀏覽

我們可以使用 ALTER TABLE 語句將 NOT NULL 約束應用於現有 MySQL 表的列。語法ALTER TABLE table_name MODIFY colum_name datatype NOT NULL;示例mysql> Create table test123(ID INT, Date DATE); Query OK, 0 rows affected (0.19 sec) mysql> Describe test123; +-------+---------+------+-----+---------+-------+ | Field | Type    | Null | Key | Default | Extra | +-------+---------+------+-----+---------+-------+ | ID    | int(11) | YES  |     | NULL    |       | | Date  | date    | YES  |     | NULL    |       | +-------+---------+------+-----+---------+-------+ ... 閱讀更多

什麼是 MySQL NOT NULL 約束,如何在建立表時將欄位宣告為 NOT NULL?

Samual Sam
更新於 2020-06-19 11:24:42

342 次瀏覽

實際上,MySQL NOT NULL 約束限制表的一列不能具有 NULL 值。一旦我們將 NOT NULL 約束應用於一列,我們就不能向該列傳遞空值。它不能在整個表上宣告,換句話說,我們可以說 NOT NULL 是列級約束。要將欄位宣告為 NOT NULL,我們必須在 CREATE TABLE 語句中定義列時使用 NOT NULL 關鍵字。示例mysql> Create table Employee(ID Int NOT NULL, First_Name Varchar(20), Last_name Varchar(20), Designation Varchar(15)); Query OK, 0 rows affected (0.59 sec)在上面的查詢中, ... 閱讀更多

廣告

© . All rights reserved.