首頁 > 軟體

如何利用SQL語句建立資料庫詳解

2022-06-16 18:05:40

前言

SQL語言是集DDL、DML和DCL於一體的資料庫語言

SQL語言主要由以下9個單詞引導的操作語句來構成,但每一種語句都能表達複雜的操作請求

  • DDL語句引導詞:Create(建立),Alter(修改),Drop(復原)

模式的定義和刪除,包括定義Database, Table,View,Index,完整性約束條件等,也包括定義物件(RowType行物件,Type列物件)

  • DML語句引導詞:Insert,Delete,Update,Select

各種方式的更新與檢索操作,如直接輸入記錄,從其他Table(由SubQuery建立)輸入

各種複雜條件的檢索,如直接查詢,模糊查詢,分組查詢,巢狀查詢等

各種聚集操作,求平均、求和、……等,分組聚集,分組過濾等

  • DCL語句引導詞:Grant,Revoke

安全性控制:授權和復原授權

建立資料庫

包括兩件事:定義資料庫和表(DDL),向表中新增元組(DML)

DDL:

建立資料庫(DB)

create database 資料庫名;

建立DB中的Table(定義關係模式)

create table 表名(列名 資料型別 【Primary key| Unique】【Not null】

【,列名 資料型別 【Not null】,...】);

舉例:定義學生表

Create Table Student(S# char(8) not null, Sname char(10), Ssex char(2), Sage integer, D# char(2), Sclass char(6));   // S#表示id

"【】"表示其括起的內容可以省略,"|"表示其隔開的兩項可取其一

Primary key:主鍵約束。每個表只能建立一個主鍵約束。

Unique:唯一性約束(即候選鍵),可以有多個唯一性約束。

Not null:非空約束。選擇Not null表明該列不允許有空值出現。

語法中的資料型別在SQL標準中有定義。

在SQL-92標準中定義的資料型別

  • char(n): 固定長度的字串
  • varchar(n): 可變長度字串
  • int: 整數 //有時不同系統也寫作integer
  • numeric(p, q): 固定精度數位,小數點左邊p位,右邊p-q位
  • real: 浮點精度數位 //有時不同系統也寫作float(n),小數點後保留n位
  • date: 日期(如2021-09-12)
  • time: 時間(如15:25:00)
  • ...

現行商用DBMS的資料型別有時和上面有些差異,請注意;和高階語言的資料型別總體上是一致的,但也有些差異。

  • 定義Table及其各個屬性的約束條件(完整性約束)
  • 定義View(定義外模式及E-C映像)
  • 定義Index、Tablespace……等(定義物理儲存引數)
  • 上述各種定義的復原與修正

DDL通常由DBA來使用,也有DBA授權後由應用程式設計師來使用

包括兩件事:定義資料庫和表(DDL),向表中新增元組(DML)

DML:

  1. 向Table中追加新的元組:Insert
  2. 修改Table中某些元組的某些屬性的值:Update
  3. 刪除Table中的某些元組:Delete
  4. 對Table中的資料進行各種條件的檢索:Select

DML通常由使用者或應用程式設計師使用,存取經授權的資料庫

向表中追加元組

insert into 表名【(列名)【,列名】…】

        values(值【,值】,…);

範例:追加學生表中的元組

Insert Into Student

Values(‘08042202’,‘張三’,‘男’,20,‘03’,‘080422’);

Insert Into Student(S#,Sname,Ssex,Sage,D#,Sclass)

Values(‘08042202’,‘張三’,‘男’,20,‘03’,‘080422’);

values後面值的排列,須與into子句後面的列名排列一致

若表名後的所有列名省略,則values後的值的排列,須與該表儲存中的列名排列一致

總結

到此這篇關於如何利用SQL語句建立資料庫的文章就介紹到這了,更多相關SQL語句建立資料庫內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!


IT145.com E-mail:sddin#qq.com