SQL語言概述及如何利用SQL建立資料庫

2021-10-23 05:16:32 字數 3679 閱讀 9091

(以下是在中國大學mooc上學習後的筆記)

sql重點與難點

sql-ddl的基本語句:create database, create table

sql-dml的基本語句:insert, delete,update, select

sql-select語句的訓練:正確表達各種查詢需求

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: data definition language

建立資料庫(db)—create database

建立db中的table(定義關係模式)—create table

定義table及其各個屬性的約束條件(定義完整性約束)

定義view (定義外模式及e-c映像) 定義index、tablespace… …等(定義物理儲存引數)

上述各種定義的撤消與修正

ddl通常由dba來使用,也有經dba授權後由應用程式設計師來使用

dml: data manipulation language

向table中追加新的元組:insert

修改table中某些元組中的某些屬性的值: update

刪除table中的某些元組: delete

對table中的資料進行各種條件的檢索: select

dml通常由使用者或應用程式設計師使用,訪問經授權的資料庫

建立database

資料庫(database)是若干具有相互關聯關係的table/relation的集合

資料庫可以看作是乙個集中存放若干table的大型檔案

create database的簡單語法形式:create database 資料庫名;

示例:建立課程學習資料庫sct

create database sct;

接著就可建立表了。

建立table

create table簡單語法形式:

create table 表名( 列名 資料型別 [primary key|unique] [not null][, 列名 資料型別 [not null] , … ]) ;

「 [ ] 」表示其括起的內容可以省略,「 | 」 表示其隔開的兩項可取其一

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 :日期 (如 2003-09-12)

time : 時間 (如 23:15:003)

示例:定義學生表 student

示例:定義課程表course

接著可向表中追加元組了。

向表中追加元組

insert into簡單語法形式:

insert into 表名[ (列名 [, 列名 ]… )]

values (值 [, 值] , …) ;

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

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

列名排列一致

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

insert into student/*所有列名省略,須與定義或儲存的列名順序一致

values ( 『98030101』 , 『張三』, 『男』, 20, 』03』, 『980301』);

insert into student ( s#, sname, s***, sage, d# , sclass)

values ( 『98030102』 , 『張四』, 『女』, 20, 』03』, 『980301』);

/*如列名未省略,須與語句中列名的順序一致

示例:追加課程表中的元組

insert into course

values ( 『001』 , 『資料庫』, 40, 6, 』001』);

insert into course(cname, c#, credit, chours, t#)

values (『資料庫』, 『001』, 6, 40, 『001』);

SQL語言概述

4.1 sql語言概述 sql structured query language 語言全稱是結構化查詢語言,他是一種在關係型資料庫中定義和操縱資料的標準語言。4.1.1 sql語言的特點 1.集合性 2.統一性 3.易於移植性 4.1.2 sql語言的分類 1.資料定義語言 ddl create ...

如何學習 SQL 語言?

如果你是資料庫小白,可以先補一下資料庫知識 接著你想提高sql水平,高階,就要學習一些比較高階的用法和技巧。1 資料庫基礎 資料庫基礎知識複習 其實這篇文章講的就是所有要點,可以有針對性的了解不熟悉的。不太明白的就直接找一本 資料庫原理 看看,大概5小時。2 sql習題 經典sql練習題 sql查詢...

SQL基礎概述

1.基礎介紹 1.1sqlplus 1.1.1 sqlplus常用命令 1.1.2 格式化 1.2聯機文件查資訊 1.3看語法圖 1.4檢視執行計畫的方法 2.資料型別及操作符 2.1資料型別 2.1.1 字元型別 2.1.2 字符集,亂碼 2.1.3 數值型別 2.2rowid 2.3rownum...