SQL學習(高階二)

2021-09-25 14:45:55 字數 2628 閱讀 6794

1、建立乙個資料庫:

create database database_name;

2、建立資料表:

create table  table_name(

column_name1    datatype   constraint_name,

column_name2    datatype   constraint_name,.......

datatype:指資料型別,常用的資料型別有varchar、int、float、decimal、date 、datetime等等;

constraint_name:指約束型別;(常見約束如下表所示)

約束名稱

含意not  null

不允許為空

unique

保證某列的每行必須有唯一的值。

check

保證列中的值符合指定的條件。

primary key

主鍵,唯一且不允許為空,有助於更容易更快速地找到表中的乙個特定的記錄。

foreign key

外來鍵,保證乙個表中的資料匹配另乙個表中的值的參照完整性。

not null 約束強制列不接受 null 值,這意味著,如果不向字段新增值,就無法插入新記錄或者更新記錄。

unique 約束唯一標識資料庫表中的每條記錄。

check 約束用於限制列中的值的範圍。

primary key 約束唯一標識資料庫表中的每條記錄,其特點有:

1、主鍵必須包含唯一的值。2、主鍵列不能包含 null 值。3、每個表都應該有乙個主鍵,並且每個表只能有乙個主鍵。

(注:unique和primary  key之間的區別與聯絡:1、unique 和 primary key 約束均為列或列集合提供了唯一性的保證。

2、primary key 約束擁有自動定義的 unique 約束。

3、每個表可以有多個 unique 約束,但是每個表只能有乙個 primary key 約束。)

foreign key約束乙個表中的 foreign key 指向另乙個表中的 unique key(唯一約束的鍵)。

約束格式:foreign key (column_name)  references table_name(column_name);

如需命名 foreign key 約束,並定義多個列的 foreign key 約束則:

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

create index 語句:用於在表中建立索引。在不讀取整個表的情況下,索引使資料庫應用程式可以更快地查詢資料。

建立格式:create index index_name on table_name(column_name);

create view語句:檢視是基於 sql 語句的結果集的視覺化的表。

建立格式:create view view_name as select語句;

null值的處理:通過is null和is not null來進行判斷。(無法比較 null 和 0;它們是不等價的。)

drop語句:使用 drop 語句,可以輕鬆地刪除索引、表和資料庫。

語法格式:刪除資料庫 drop database database_name;

刪除資料表 drop table table_name;(保留表只刪除資料delete from table_name)

刪除資料索引 drop index index_name;

alter table 語句:用於在已有的表中新增、刪除或修改列。

新增列:alter table table_name add column column_name datatype;

刪除列:alter table table_name drop column column_name;

新增主鍵約束:alter table table_name add constraint  pk_name primary key(column_name);

新增外來鍵約束:

alter table table_name add constraint  fk_nameforeign key (column_name) references table_name(column_name);

刪除主外來鍵約束:alter table table_name drop constraint constraint_name;

SQL高階學習(二)

union 操作符用於合併兩個或多個 select 語句的結果集。請注意,union 內部的每個 select 語句必須擁有相同數量的列。列也必須擁有相似的資料型別。同時,每個 select 語句中的列的順序必須相同。select column name s from table1 union se...

SQL高階模組二

1.unique unique 約束唯一標識資料庫表中的每條記錄。unique 和 primary key 約束均為列或列集合提供了唯一性的保證。primary key 約束擁有自動定義的 unique 約束。注意,每個表可以有多個 unique 約束,但是每個表只能有乙個 primary key ...

高階sql學習 with子句!!!

使用with as 語句可以為乙個子查詢語句塊定義乙個名稱,使用這個子查詢名稱可以在查詢語句的很多地方引用這個子查詢。oracle 資料庫像對待內聯檢視或臨時表一樣對待被引用的子查詢名稱,從而起到一定的優化作用。with子句是9i新增語法。你可以在任何乙個頂層的select 語句以及幾乎所有型別的子...