1 數據庫基礎
相關概念
-
數據庫(Database,DB):將大量數據保存起來,經過計算機加工而成的能夠進行高效訪問的數據集合。linux
-
數據庫管理系統(Database Management System,DBMS):用來管理數據庫的計算機系統。sql
DBMS
2 SQL
2.1 SQL語句
數據庫中存儲的表結構相似於excel中的行和列。
在數據庫中,行稱爲記錄,至關於一條記錄;列稱爲字段,表明了表中存儲的數據項目。行和列交匯的地方稱爲單元格。
數據庫
2.2 SQL基本書寫規則
- 以分號( ; )結尾;
- 不區分關鍵字的大小寫,但插入到表中的數據區分大小寫;
- win 系統默認不區分表名及字段名的大小寫;
- linux / mac 默認嚴格區分表名及字段名的大小寫;
- 常數的書寫方式固定;
- 單詞須要用半角空格或換行分隔。
2.3 命名規則
只能使用半角英文字母、數字、下劃線(_)做爲數據庫、表和列的名稱
名稱必須以半角英文字母開頭。
post
2.4 數據類型的指定
數據庫建立的表,全部的列都必須指定數據類型,如下是四種基本類型:編碼
-
INTEGER 型:存儲整數的列的數據類型(數字型);spa
-
CHAR 型:定長字符串,列中存儲的字符串長度達不到最大長度的時候,使用半角空格進行補足,通常不使用;excel
-
VARCHAR 型:可變長度字符串,即便字符數未達到最大長度,也不會用半角空格補足。code
-
DATE 型:存儲日期(年月日)的列的數據類型(日期型)。blog
2.5 約束的設置
除了數據類型以外,對列中存儲的數據進行限制或者追加條件的功能。圖片
- NOT NULL:非空約束,該列必須輸入數據。
- PRIMARY KEY:主鍵約束,該列是惟一值,能夠經過該列取出特定的行的數據。
3 練習題
1.編寫一條 CREATE TABLE 語句,用來建立一個包含表 1-A 中所列各項的表 Addressbook (地址簿),併爲 regist_no (註冊編號)列設置主鍵約束
表1-A 表 Addressbook (地址簿)中的列
CREATE TABLE Addressbook (regist_no INTEGER NOT NULL , name VARCHAR(128) NOT NULL , address VARCHAR(256) NOT NULL , tel_no CHAR(10) , mail_address CHAR(20) , PRIMARY KEY (regist_no) );
2.假設在建立練習1.1中的 Addressbook 表時忘記添加以下一列 postal_code (郵政編碼)了,請把此列添加到 Addressbook 表中。
列名 : postal_code
數據類型 :定長字符串類型(長度爲 8)
約束 :不能爲 NULL
ALTER TABLE Addressbook ADD COLUMN pstal_code CHAR(8) NOT NULL;
3.編寫 SQL 語句來刪除 Addressbook 表。
DROP TABLE Addressbook;
4.編寫 SQL 語句來恢復刪除掉的 Addressbook 表。
刪除的表沒法恢復,只能從新插入。