《經(jīng)典常用SQL 基礎知識數(shù)據(jù)庫與 SQL》由會員分享,可在線閱讀,更多相關《經(jīng)典常用SQL 基礎知識數(shù)據(jù)庫與 SQL(8頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、SQL 基礎知識- 數(shù)據(jù)庫與 SQL目錄 Whats 數(shù)據(jù)庫 數(shù)據(jù)庫結構 SQL 概要 創(chuàng)建數(shù)據(jù)庫與表 刪除和更新表一、Whats 數(shù)據(jù)庫1.數(shù)據(jù)庫(Database,DB):將大量數(shù)據(jù)保存起來,通過計算機加工而成的可以進行高效訪問的數(shù)據(jù)集合。如:大型-銀行存儲的信息,小型-電話簿。2.數(shù)據(jù)庫管理系統(tǒng)(Batabase Management System,DBMS):用來管理數(shù)據(jù)庫的計算機系統(tǒng)。3.關系型數(shù)據(jù)庫(Relational Database,RDB):目前應用最廣泛的數(shù)據(jù)庫。4.結構化查詢語言(Structured Query Language,SQL):專門用于操作 RDB。5.常
2、見的 5 種關系型數(shù)據(jù)庫管理系統(tǒng)(Relational Database Management System,RDBMS):Oracle Database:甲骨文公司SQL Server:微軟公司DB2:IBM 公司PostgreSQL:開源MySQL:開源二、數(shù)據(jù)庫結構1.服務器:用于接收并處理其它程序發(fā)出的請求的程序(軟件),或者是安裝此類程序的設備(計算機)。2.客戶端:向服務器發(fā)出請求的程序(軟件),或者是安裝此類程序的設備(計算機)。3.表(table):類似 Excel,由行和列組成的二維表。4.字段:表的列(垂直方向)。5.記錄:表的行(水平方向)。【注意】關系數(shù)據(jù)庫必須以行為單
3、位進行數(shù)據(jù)讀寫。6.單元格:行列交匯處。【注意】與 Excel 不同,一個單元格只能輸入一個數(shù)據(jù)。三、SQL 概要1.SQL 語句:用關鍵字、表名和列名等組合而成的一條語句。2.3 種 SQL 語句種類:(1)DDL(Data Definition Language,數(shù)據(jù)定義語言):創(chuàng)建、刪除或修改數(shù)據(jù)庫以及數(shù)據(jù)庫中的表等對象。CREATE:創(chuàng)建數(shù)據(jù)庫和表等對象DROP:刪除數(shù)據(jù)庫和表等對象ALTER:修改數(shù)據(jù)庫和表等對象(2)DML(Data Manipulation Language,數(shù)據(jù)操作語言):查詢或修改表中的記錄。SELECT:查詢表中的數(shù)據(jù)INSERT:向表中插入數(shù)據(jù)UPDATE
4、:修改表中的數(shù)據(jù)DELETE:刪除表中的數(shù)據(jù)(3)DCL(Data Control Language,數(shù)據(jù)控制語言):確認或取消對數(shù)據(jù)庫中的數(shù)據(jù)變更的執(zhí)行操作,以及對用戶的操作數(shù)據(jù)庫中的對象權限進行設定。COMMIT:確認對數(shù)據(jù)庫中的數(shù)據(jù)進行的變更ROLLBACK:取消對數(shù)據(jù)庫中的數(shù)據(jù)進行的變更GRANT:賦予用戶的操作權限REVOKE:取消用戶的操作權限【備注】DML 使用最頻繁。3.SQL 語句書寫規(guī)范:以分號(;)結尾;大小寫不敏感,不區(qū)分關鍵字的大小寫;【注意】插入到表中的數(shù)據(jù)是區(qū)分大小寫的,如“HI”、“Hi”和“hi”都不同。該系列隨筆將采用“關鍵字大寫,表名和列名的首字母大寫”的
5、格式。單詞使用半角空格或換行符隔開4.常數(shù)的書寫方式:字符串、日期:用單引號括起來(),如Hello,2016-09-24。數(shù)字:直接書寫,不用加單引號,如:5。四、創(chuàng)建數(shù)據(jù)庫與表1.數(shù)據(jù)庫創(chuàng)建:- 語法:CREATE DATABASE CREATE DATABASE Shop - 創(chuàng)建名為 Shop 的數(shù)據(jù)庫2.表的創(chuàng)建- 語法:- CREATE TABLE - (- ,- ,- .- ,- ,- .- )- 創(chuàng)建名為 Shohin 的表CREATE TABLE Shohin( shohin_id CHAR(4) NOT NULL, shohin_mei VARCHAR(100) NOT N
6、ULL, shohin_bunrui VARCHAR(32) NOT NULL, hanbai_tanka INTEGER , shiire_tanka INTEGER , torokubi DATE , PRIMARY KEY (shohin_id) );3.命名規(guī)則:只能使用半角英文字母、數(shù)字、下劃線(_)作為數(shù)據(jù)庫、表和列的名稱;規(guī)范要求命名以半角英文字符開頭;名稱不能重復。4.數(shù)據(jù)類型的指定:聲明該列的數(shù)據(jù)類型,是一種約束。5.數(shù)據(jù)類型介紹:INTEGER:整型,意味不能存儲小數(shù);CHAR:字符串型,如 CHAR(10)和 CHAR(100)中的括號表名該列可以存儲的字符串的最大長度。
7、它是“定長字符串”,如 CHAR(8) 表示在列中插入 abc 時會自動保存成 abc (后面5個半角空格)的形式;VARCHAR:字符串型,類似 CHAR,不同的是它是 “可變長字符串”,如 VARCHAR(8) 在插入 abc,保存的就是字符串 abc;DATE:日期類型;. .6.約束:非空約束:NULL 是空白(無記錄)的意思的關鍵字,NOT NULL 表示必須輸入的約束。主鍵約束:主鍵是可以確定一行數(shù)據(jù)的列,一般通過它取特定行的數(shù)據(jù),它是唯一的,不允許重復。. .五、更新和刪除表1.刪除表- 語法:DROP TABLE DROP TABLE Shohin; - 刪除名為 Shohin 的表【注意】被刪的表,無法恢復。2.更新表(1)添加列- 語法:ALTER TABLE ADD ;ALTER TABLE Shohin ADD Shohin_mei_Kana VARCHAR(100); - 在 Shohin 中添加名為 Shohin_mei_Kana 類型為 VARCHAR(100) 的列(2)刪除列- 語法:ALTER TABLE DROP COLUMN ;ALTER TABLE Shohin DROP COLUMN Shohin_mei_Kana; - 刪除 Shohin 表中名為 Shohin_mei_Kana 的列【注意】表定義變更后無法恢復。