1.SQL概述
1.1什么是SQL
SQL(Structured Query Language)是結(jié)構(gòu)化查詢語言,是一種數(shù)據(jù)庫查詢和程序設(shè)計語言,用于存取數(shù)據(jù)以及查詢、更新和管理關(guān)系數(shù)據(jù)庫系統(tǒng),例如MySQL、Oracle、SQL Server等。
SQL是高級的非過程化編程語言,是溝通數(shù)據(jù)庫服務(wù)器和客戶端的重要工具,允許用戶在高層數(shù)據(jù)結(jié)構(gòu)上工作。它不要求用戶指定對數(shù)據(jù)的存放方法,也不需要用戶了解具體的數(shù)據(jù)存放方式,所以,具有完全不同底層結(jié)構(gòu)的不同數(shù)據(jù)庫系統(tǒng),可以使用相同的SQL語言作為數(shù)據(jù)輸入與管理的接口。
1.2 SQL標(biāo)準(zhǔn)
“美國國家標(biāo)準(zhǔn)化組織(ANSI) ”是一個核準(zhǔn)多種行業(yè)標(biāo)準(zhǔn)的組織。SQL作為關(guān)系型數(shù)據(jù)庫所使用的標(biāo)準(zhǔn)語言,最初是基于IBM的實現(xiàn)并在1986年被批準(zhǔn)的。1987年,“國際標(biāo)準(zhǔn)化組織(ISO)”把ANSI SQL作為國際標(biāo)準(zhǔn)。SQL有以下標(biāo)準(zhǔn):
- SQL-92:1992年發(fā)布的SQL語言標(biāo)準(zhǔn);
- SQL:1999:1999年發(fā)布的SQL語言標(biāo)準(zhǔn);
- SQL:2003:2003年發(fā)布的SQL語言標(biāo)準(zhǔn);
所謂的標(biāo)準(zhǔn)是指對DBMS的統(tǒng)一操作方式,例如相同的語句可以操作:mysql數(shù)據(jù)庫、oracle數(shù)據(jù)庫等。但是不同的數(shù)據(jù)庫也會有屬于自己的獨(dú)有的語法,這就稱為方言。就如人一樣,來自不同的地區(qū),說不同的話,不同地區(qū)的都有自己獨(dú)有的方言。而普通話就像是一個標(biāo)準(zhǔn),任何地區(qū)的人都能聽得懂。
1.3 SQL語法
SQL的語法有以下要求:
- SQL語句可以單行或多行書寫,以分號結(jié)尾;
- 可使用空格和縮進(jìn)來增強(qiáng)語句的可讀性;
- MySQL數(shù)據(jù)庫的SQL語句不區(qū)分大小寫,建議使用大寫,例如:SELECT * FROM user。
2. SQL分類
SQL一共分成四類,如下所示:
- 數(shù)據(jù)定義語言:簡稱DDL(Data Definition Language),用來定義數(shù)據(jù)庫對象:數(shù)據(jù)庫,表,列等,例如創(chuàng)建、刪除、修改:數(shù)據(jù)庫、表結(jié)構(gòu)等;
- 數(shù)據(jù)操作語言:簡稱DML(Data Manipulation Language),用來對數(shù)據(jù)庫中表的記錄進(jìn)行更新,例如:增、刪、改表記錄;
- 數(shù)據(jù)控制語言:簡稱DCL(Data Control Language),用來定義數(shù)據(jù)庫的訪問權(quán)限和安全級別,及創(chuàng)建用戶;
- 數(shù)據(jù)查詢語言:簡稱DQL(Data Query Language),用來查詢數(shù)據(jù)庫中表的記錄。
大家可能會對DDL和DML分的不太清楚,DDL是對數(shù)據(jù)庫或表的結(jié)構(gòu)進(jìn)行操作,而DML是對表的記錄進(jìn)行操作(增、刪、改)。以上四個分類,我們以后最常用的就是DDL、DML、DQL,其中,DQL是難點(diǎn)。
本文版權(quán)歸傳智播客Java培訓(xùn)學(xué)院所有,歡迎轉(zhuǎn)載,轉(zhuǎn)載請注明作者出處。謝謝!
作者:傳智播客Java培訓(xùn)學(xué)院
首發(fā):http://m.8y3kgpwe.cn/javaee