SQL語言的基本介紹


1、SQL語言的基本概念

SQL指結構化查詢語言,全稱是 Structured Query Language。使用 SQL 可以訪問和處理關系型數據庫,它是用於訪問和處理數據庫的標准的計算機語言。

SQL語句既可以查詢數據庫中的數據,也可以添加、更新和刪除數據庫中的數據,還可以對數據庫進行管理和維護操作。不同的數據庫,都支持SQL,這樣,我們通過學習SQL這一種語言,就可以操作各種不同的數據庫。

雖然SQL已經被ANSI組織定義為標准,不幸地是,各個不同的數據庫對標准的SQL支持不太一致。並且,大部分數據庫都在標准的SQL上做了擴展。也就是說,如果只使用標准SQL,理論上所有數據庫都可以支持,但如果使用某個特定數據庫的擴展SQL,換一個數據庫就不能執行了。例如,Oracle把自己擴展的SQL稱為PL/SQL,Microsoft把自己擴展的SQL稱為T-SQL

現實情況是,如果我們只使用標准SQL的核心功能,那么所有數據庫通常都可以執行。不常用的SQL功能,不同的數據庫支持的程度都不一樣。而各個數據庫支持的各自擴展的功能,通常我們把它們稱之為“方言”。

SQL 的特點有:

  • SQL 面向數據庫執行查詢
  • SQL 可從數據庫取回數據
  • SQL 可在數據庫中插入新的記錄
  • SQL 可更新數據庫中的數據
  • SQL 可從數據庫刪除記錄
  • SQL 可創建新數據庫
  • SQL 可在數據庫中創建新表
  • SQL 可在數據庫中創建存儲過程
  • SQL 可在數據庫中創建視圖
  • SQL 可以設置表、存儲過程和視圖的權限

 

1.1、NoSQL的簡單介紹

除了關系型數據庫外,你可能還聽說過NoSQL數據庫,也就是非SQL的數據庫,包括MongoDB、Cassandra、Dynamo等等,它們都不是關系數據庫。有很多人鼓吹現代Web程序已經無需關系數據庫了,只需要使用NoSQL就可以。但事實上,SQL數據庫從始至終從未被取代過。今天,SQL數據庫仍然承擔了各種應用程序的核心數據存儲,而NoSQL數據庫作為SQL數據庫的補充,兩者不再是二選一的問題,而是主從關系。所以,無論使用哪種編程語言,無論是Web開發、游戲開發還是手機開發,掌握SQL,是所有軟件開發人員所必須的。

 

2、SQL的語法特點

SQL語法的語法特點有:

  • SQL 對關鍵字的大小寫不敏感,比如SELECT 與 select 是相同的,一個關鍵字混合大小寫也是可以的,比如 SeLect,關鍵字建議大寫。
  • 數據庫名,表名,表字段一般來說都是區分大小寫的,所以在使用SQL命令操作數據庫表和字段時需要輸入正確的名稱。
  • SQL語句可以以單行或者多行書寫,以分行結束(某些數據庫系統要求在每條 SQL 語句的末端使用分號,比如MySQL)。分號是在數據庫系統中分隔每條 SQL 語句的標准方法,這樣就可以在對服務器的相同請求中執行一條以上的 SQL 語句。
  • SQL的注釋:
單行注釋: -- 注釋內容、# 注釋內容  (在MySQL中,-- 后面一定要加一個空格,#后面可加可不加空格。單行注釋建議使用 #)
SELECT * FROM Websites;  -- 這里是注釋
SELECT * FROM Websites;  # 這里是注釋

多行注釋: 
/* 
注釋內容 
注釋內容
*/

 

3、SQL語句的分類(DDL、DML、DQL、DCL)

SQL語言定義了以下四種操作數據庫的能力,可分為以下四類:

DDL(Data Definition Language,操作數據庫和表結構):DDL是用來操作數據庫和表的,也就是創建數據庫和表、刪除數據庫和表、修改表結構這些操作。通常,DDL由數據庫管理員執行。

DQL(Data Query Language,查詢數據):DQL就是用來查詢表中的數據的,為用戶提供查詢數據的能力,這也是通常最頻繁的數據庫日常操作。

DML(Data Manipulation Language,修改數據):DML就是用來增刪改表中的數據的,為用戶提供添加、刪除、更新數據的能力,這些是應用程序對數據庫的日常操作。

DCL(Data Control Language,授權權限):DCL是用來授權的,用來定義數據庫的訪問權限和安全級別,以及創建用戶等。關鍵字:GRANT、REVOKE等。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM