資料庫基礎知識

2022-07-24 20:36:33 字數 2735 閱讀 6310

資料庫(database, db)是將大量資料儲存起來,通過計算機加工而成的可以進行高效訪問的資料集合。

用來管理資料庫的計算機系統稱為資料庫管理系統(database management system,dbms)

為什麼dbms那麼重要?

無法多人共享資料

無法提供操作大量資料所需的格式

實現讀寫自動化需要程式設計能力

無法應對突發事故

4.dbms的種類

層次資料庫(hierarchical database, hdb):最古老的資料庫之一,它把資料通過層次結構(樹形結構)的方式表現出來。

關聯式資料庫(relational database, rdb):關聯式資料庫是現在應用最廣泛的資料庫。

物件導向資料庫(object oriented database, oodb):把資料以及對資料的操作集合起來以物件為單位進行管理。

xml資料庫(xml database, xmldb):xml 資料庫可以對 xml 形式的大量資料進行高速處理。

鍵值儲存系統(key-value store, kvs):這是一種單純用來儲存查詢所使用的主鍵(key)和值(value)的組合的資料庫。

5.解決的問題是什麼?

持久化儲存、優化讀寫、保證資料的有效性

sql(structured query language,結構化查詢語言)是用來操作關聯式資料庫的語言。

sql語句及其種類:sql 用關鍵字、表名、列名等組合而成的一條語句(sql 語句)來描述操作的內容。關鍵字是指那些含義或使用方法已事先定義好的英語單詞,存在包含「對錶進行查詢」或者「參考這個表」等各種意義的關鍵字。根據對 rdbms 賦予的指令種類的不同, sql 語句可以分為以下三類。ps:實際使用的 sql 語句當中有 90% 屬於 dml。

ddl(data definition language,資料定義語言)用來建立或者刪除儲存資料用的資料庫以及資料庫中的表等物件。 ddl 包含以下幾種指令。

create: 建立資料庫和表等物件

drop: 刪除資料庫和表等物件

alter: 修改資料庫和表等物件的結構

dml(data manipulation language,資料操縱語言)用來查詢或者變更表中的記錄。 dml 包含以下幾種指令。

create: 建立資料庫和表等物件

drop: 刪除資料庫和表等物件

alter: 修改資料庫和表等物件的結構

dcl(data control language,資料控制語言)用來確認或者取消對資料庫中的資料進行的變更。除此之外,還可以對 rdbms 的使用者是否有許可權運算元據庫中的物件(資料庫表等)進行設定。 dcl 包含以下幾種指令。

commit: 確認對資料庫中的資料進行的變更

rollback: 取消對資料庫中的資料進行的變更

grant: 賦予使用者操作許可權

revoke: 取消使用者的操作許可權

sql的基本書寫規則:

sql語句要以分號(;)結尾;

sql語句不區分關鍵字大小寫,插入表中的資料區分大小寫;

常數的書寫方式是固定的,字串和日期常數需要使用單引號(')括起來,數字常數無需加註單引號(直接書寫數字即可);

單詞間需要用半形空格或者換行來分隔,不能使用全形空格作為單詞的分隔符;

資料庫的建立(creeate database語句):create database 《資料庫名稱》;

表的建立(create table語句):

2. 命名規則:只能使用半形英文本母、數字、下劃線(_)作為資料庫、表和列的名稱 ,且名稱必須以半形英文本母開頭。同乙個表中不能建立兩個名稱相同的列。

資料型別的指定:所有的列都必須指定資料型別,資料型別表示資料的種類,包括數字型、 字元型和日期型等。每一列都不能儲存與該列資料型別不符的資料。下面介紹四種基本的資料型別:

integer型:用來指定儲存整數的列的資料型別(數字型),不能儲存小數。

char型:char 是 character(字元)的縮寫,是用來指定儲存字串的列的資料型別(字元型),可在括號中指定字串的長度,以定長字串的形式儲存,即字串達不到指定的最大長度時,使用半形空格補充。

varchar型:同char型別一樣,但其為可變長字串,即字串達不到指定的最大長度,不會以空格補充。

date型:用來指定儲存日期(年月日)的列的資料型別(日期型)。

3. 約束的設定:約束是除了資料型別之外,對列中儲存的資料進行限制或者追加條件的功能,例如:約定單元格輸入不能為空not null,約定主鍵等。

表的刪除(drop table語句):drop table 《表名》;,需要注意的是,刪除的表是無法恢復的。

表定義的更新(alter table 語句):

增加列使用的語法:alter table 《表名》 add column 《列的定義》;

刪除列使用的語法:alter talbe 《表名》 drop column 《列名》;,刪除的資料無法恢復。

向表中插入資料:在mysql中執行時,需要將①中的begin transaction;改寫為start transaction。

4. 表名的變更:rename table 《變更前的名稱》 to 《變更後的名稱》

資料庫基礎知識

資料定義 定義基本表 create table 表名 列名 資料型別 列級完整性約束條件 列名 資料型別 列級完整性約束條件 表級完整性約束條件 後面用到的表 1 學生 表 student 由學號 sno 姓名 sname 性別 s 年齡 sage 所在系 sdept 5個屬性組成,可記為 stud...

資料庫 基礎知識

e r模型 實體 聯絡模型 entity relationship model,e r模型 實體是指現實中區別於其他物件的一種 物體 或一件 事情 例如一名學生,乙個專案等等。同乙個型別中所有的實體被叫做實體集,對應於資料庫的一張表,乙個實體則對應於一條記錄。不同的任務之間,就是通過聯絡關係整合到一...

資料庫基礎知識

一 1 ddl 資料庫定義語句,建立資料表 dml 資料庫操作語言 dcl 資料控制語言 dql 資料查詢語言 2 資料查詢,sql語句 看課堂作業 查詢結果是表。3 聚集函式的一般格式 會使用 distinct all 列名 4 檢視 從乙個或幾個基本表 或檢視 匯出的表,與基本表不同,是乙個虛表...