找到 4379 篇文章 关于 MySQL
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 | | | ... 阅读更多
5K+ 次浏览
要从 MySQL 表中删除唯一约束,首先我们必须检查表上由唯一约束创建的索引名称。众所周知,SHOW INDEX 语句用于此目的。SHOW INDEX 语句结果集中的 'key_name' 包含索引的名称。现在,我们可以使用 DROP INDEX 语句或 ALTER TABLE 语句删除唯一约束。两种语句的语法如下:语法DROP INDEX index_name ON table_name; OR ALTER TABLE table_name DROP INDEX index_name;示例假设我们有表... 阅读更多
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)现在,正如我们所知... 阅读更多
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 | ... 阅读更多
438 次浏览
我们可以使用 ALTER TABLE 语句将唯一约束应用于现有 MySQL 表的列。语法ALTER TABLE table_name MODIFY colum_name datatype UNIQUE; OR ALTER TABLE table_name ADD UNIQUE (colum_name);示例假设我们有以下名为 'Test4' 的表,并且我们想向列 'Name' 添加唯一约束,那么可以使用 ALTER TABLE 命令如下所示:mysql> DESCRIBE test4; +-------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+-------------+------+-----+---------+-------+ | ID ... 阅读更多
175 次浏览
完全可以将 NULL 关键字作为值插入具有 NOT 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: ... 阅读更多
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)现在,如果我们... 阅读更多
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
342 次浏览
我们可以使用 ALTER TABLE 语句,为现有 MySQL 表的列应用 NOT NULL 约束。 语法ALTER TABLE 表名 MODIFY 列名 数据类型 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 | | +-------+---------+------+-----+---------+-------+ ... 阅读更多
342 次浏览
实际上,MySQL NOT NULL 约束限制表中的某一列不能具有 NULL 值。一旦我们为某一列应用了 NOT NULL 约束,那么我们就不能向该列传递 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)在上面的查询中, ... 阅读更多