SQL 不常用的知識點(mysql)

2021-09-25 18:14:03 字數 2538 閱讀 5731

1. sql default 約束

default 約束用於向列中插入預設值。

如果沒有規定其他的值,那麼會將預設值新增到所有的新記錄。

建立表時:

create table persons

(id_p int not null,

lastname varchar(255) not null,

firstname varchar(255),

address varchar(255),

city varchar(255) default 'sandnes'

)

如果在表已存在的情況下為 "city" 列建立 default 約束,請使用下面的 sql:

mysql:

alter table persons

alter city set default 'sandnes'

如需撤銷 default 約束,請使用下面的 sql:

alter table persons

alter city drop default

2.sql check 約束

check 約束用於限制列中的值的範圍。如果對單個列定義 check 約束,那麼該列只允許特定的值。如果對乙個表定義 check 約束,那麼此約束會在特定的列中對值進行限制。

create table persons

(id_p int not null,

lastname varchar(255) not null,

firstname varchar(255),

address varchar(255),

city varchar(255),

check (id_p>0)

)

如果需要命名 check 約束,以及為多個列定義 check 約束

create table persons

(id_p int not null,

lastname varchar(255) not null,

firstname varchar(255),

address varchar(255),

city varchar(255),

constraint chk_person check (id_p>0 and city='sandnes')

)

3.create index 語句

create index 語句用於在表中建立索引。

在不讀取整個表的情況下,索引使資料庫應用程式可以更快地查詢資料

可以在表中建立索引,以便更加快速高效地查詢資料。

使用者無法看到索引,它們只能被用來加速搜尋/查詢。

表上建立乙個簡單的索引。允許使用重複的值:

create index index_name

on table_name (column_name)

在表上建立乙個唯一的索引。唯一的索引意味著兩個行不能擁有相同的索引值。

create unique index index_name

on table_name (column_name)

以降序索引某個列中的值,您可以在列名稱之後新增保留字 desc:

create index personindex

on person (lastname desc)

4.外來鍵約束

在students表中插入class表的id作為外來鍵:

alter table students

add constraint fk_class_id

foreign key (class_id)

references classes (id);

其中,外來鍵約束的名稱fk_class_id可以任意,foreign key (class_id)指定了class_id作為外來鍵,references classes (id)指定了這個外來鍵將關聯到classes表的id列(即classes表的主鍵)。通過定義外來鍵約束,關聯式資料庫可以保證無法插入無效的資料。即如果classes表不存在id=99的記錄,students表就無法插入class_id=99的記錄。

要刪除乙個外來鍵約束,也是通過alter table實現的:

alter table students

drop foreign key fk_class_id;

注意:刪除外來鍵約束並沒有刪除外來鍵這一列。刪除列是通過drop column ...實現的。

mysql常用知識點 mysql 常用知識點。

mysql u root p show databases show tables select from abc order by id limit 0,10 create database bbb exit mysqldump u root p game home backup.sql mysq...

mysql常用知識點

sql 元素在 windows 和 linux 系統是否區分大小寫。mysql 的資料型別有大概可以分為 5 種,分別是整數型別 浮點數型別和定點數型別 日期和時間型別 字串型別 二進位制型別等。注意 整數型別和浮點數型別可以統稱為數值資料型別。數值型別 整數型別包括 tinyint smallin...

SQL常用知識點積累

對於sql,主要是sql server的使用,常用知識點如下 1.根據資料庫指令碼生成資料庫。一般根據資料庫指令碼生成資料庫時,會非常慢,因為需要較資料庫架構即資料及其他資料庫相關的資訊一起複製到目標資料庫。但如果僅選擇資料庫指令碼的生成相關的表的sql語句,則較快。因此,根據指令碼還原資料庫時,一...