SQL語句的作用是什么
和數據庫對話
SQL介紹:
本書假設你是在SQL操作Microsoft SQL Sever 的數據庫。你也可以用SQL操作許多其它類型的數據庫。SQL是操作數據庫的標準語言。(事實上,關于SQL語言有一個專門的ANSI標準〕
注意:
不要在你的站點上試圖用Microsoft Access代替Microsoft SQL Sever。SQL Sever可以同時服務于許多用戶,如果你希望你的站點有較高的訪問率,MS Access是不能勝任的。
在學習SQL的細節之前,你需要理解它的兩大特點。一個特點容易掌握,另一個掌握起來有點困難。
第一個特點是所有SQL數據庫中的數據都存儲在表中。一個表由行和列組成。例如,下面這個簡單的表包括name 和e-mail address:
Name Email Address
。。。。。。。。。。。。。。。。。。。。。.
Bill Gates billg@*
president Clinton president@*
Stephen Walther swalther@*
這個表有兩列(列也稱為字段,域〕:Name和Email Address。有三行,每一行包含一組數據。一行中的數據組合在一起稱為一條記錄。
無論何時你向表中添加新數據,你就添加了一條新記錄。一個數據表可以有幾十個記錄,也可以有幾千甚至幾十億個記錄。雖然你也許永遠不需要存儲十億個Email地址,但知道你能這樣做總是好的,也許有一天你會有這樣的需要。
你的數據庫很有可能包含幾十個表,所有存儲在你數據庫中的信息都被存儲在這些表中。當你考慮怎樣把信息存儲在數據庫中時,你應該考慮怎樣把它們存儲在表中。
SQL的第二個特點有些難于掌握。這種語言被設計為不允許你按照某種特定的順序來取出記錄,因為這樣做會降低SQL Sever取記錄的效率。使用SQL,你只能按查詢條件來讀取記錄。
當考慮如何從表中取出記錄時,自然會想到按記錄的位置讀取它們。例如,也許你會嘗試通過一個循環,逐個記錄地掃描,來選出特定的記錄。在使用SQL時,你必須訓練自己,不要有這種思路。
假如你想選出所有的名字是“Bill Gates”的記錄,如果使用傳統的編程語言,你也許會構造一個循環,逐個查看表中的記錄,看名字域是否是“Bill Gates”。
這種選擇記錄的方法是可行的,但是效率不高。使用SQL,你只要說,“選擇所有名字域等于Bill Gates的記錄”,SQL就會為你選出所有符合條件的記錄。SQL會確定實現查詢的最佳方法。
建設你想取出表中的前十個記錄。使用傳統的編程語言,你可以做一個循環,取出前十個記錄后結束循環。但使用標準的SQL查詢,這是不可能實現的。從SQL的角度來說,在一個表中不存在前十個記錄這種概念。
開始時,當你知道你不能用SQL實現某些你感覺應該能實現的功能,你會受到挫折。你也許會以頭撞墻甚至想寫惡毒的信件給SQL的設計者們。但后來你會認識到,SQL的這個特點不僅不是個限制,反而是其長處。因為SQL不根據位置來讀取記錄,它讀取記錄可以很快。
SQL語句是什么
SQL全稱是“結構化查詢語言(Structured Query Language)” SQL(Structured Query Language)是一種數據庫查詢和程序設計語言,用于存取數據以及查詢、更新和管理關系數據庫系統。
SQL同時也是數據庫腳本文件的擴展名。 SQL是高級的非過程化編程語言,允許用戶在高層數據結構上工作。
他不要求用戶指定對數據的存放方法,也不需要用戶了解具體的數據存放方式,所以具有完全不同底層結構的不同數據庫系統可以使用相同的SQL語言作為數據輸入與管理的接口。它以記錄集合作為操作對象,所有SQL語句接受集合作為輸入,返回集合作為輸出,這種集合特性允許一條SQL語句的輸出作為另一條SQL語句的輸入,所以SQL語句可以嵌套,這使他具有極大的靈活性和強大的功能,在多數情況下,在其他語言中需要一大段程序實現的功能只需要一個SQL語句就可以達到目的,這也意味著用SQL語言可以寫出非常復雜的語句。
結構化查詢語言(Structured Query Language)最早是IBM的圣約瑟研究實驗室為其關系數據庫管理系統SYSTEM R開發的一種查詢語言,它的前身是SQUARE語言。SQL語言結構簡潔,功能強大,簡單易學,所以自從IBM公司1981年推出以來,SQL語言得到了廣泛的應用。
如今無論是像Oracle、Sybase、Informix、SQL Server這些大型的數據庫管理系統,還是像Visual Foxporo、PowerBuilder這些PC上常用的數據庫開發系統,都支持SQL語言作為查詢語言。 美國國家標準局(ANSI)與國際標準化組織(ISO)已經制定了SQL標準。
ANSI是一個美國工業和商業集團組織,負責開發美國的商務和通訊標準。ANSI同時也是ISO和International Electrotechnical Commission(IEC)的成員之一。
ANSI 發布與國際標準組織相應的美國標準。1992年,ISO和IEC發布了SQL國際標準,稱為SQL-92。
ANSI隨之發布的相應標準是ANSI SQL-92。ANSI SQL-92有時被稱為ANSI SQL。
盡管不同的關系數據庫使用的SQL版本有一些差異,但大多數都遵循 ANSI SQL 標準。SQL Server使用ANSI SQL-92的擴展集,稱為T-SQL,其遵循ANSI制定的 SQL-92標準。
SQL語言包含4個部分: ※ 數據定義語言(DDL),例如:CREATE、DROP、ALTER等語句。 ※ 數據操作語言(DML),例如:INSERT、UPDATE、DELETE語句。
※ 數據查詢語言(DQL),例如:SELECT語句。 ※ 數據控制語言(DCL),例如:GRANT、REVOKE、COMMIT、ROLLBACK等語句。
SQL語言包括三種主要程序設計語言類別的陳述式:數據定義語言(DDL),數據操作語言(DML)及數據控制語言(DCL)。 [編輯本段]SQL發展歷史 1970: E.J. Codd 發表了關系數據庫理論(relational database theory); 1974-79: IBM 以Codd的理論為基礎開發了“Sequel”,并重命名為"SQL"; 1979: Oracle 發布了商業版SQL 1981-84: 出現了其他商業版本,分別來自 IBM(DB2),Data General(DG/SQL),Relational Technology(INGRES); SQL/86:ANSI 跟 ISO的第一個標準; SQL/89:增加了引用完整性(referential integrity); SQL/92(aka SQL2):被數據庫管理系統(DBMS)生產商廣發接受; 1997+:成為動態網站(Dynamic web content)的后臺支持; SQL/99:Core level跟其他8種相應的level,包括遞歸查詢,程序跟流程控制,基本的對象(object)支持包括oids; SQL/2003:包含了XML相關內容,自動生成列值(column values); 2005-09-30:“Data is the next generation inside。
SQL is the new HTML”! Tim O'eilly提出了Web 2.0理念,稱數據將是核心,SQL將成為“新的 HTML"; SQL/2006:定義了SQL與XML(包含XQuery)的關聯應用; 2006:Sun公司將以SQL基礎的數據庫管理系統嵌入Java V6。
SQL語言的用途
結構化查詢語言(Structured Query Language)簡稱SQL,結構化查詢語言是一種數據庫查詢和程序設計語言,用于存取數據以及查詢、更新和管理關系數據庫系統;同時也是數據庫腳本文件的擴展名。
結構化查詢語言是高級的非過程化編程語言,允許用戶在高層數據結構上工作。它不要求用戶指定對數據的存放方法,也不需要用戶了解具體的數據存放方式,所以具有完全不同底層結構的不同數據庫系統可以使用相同的結構化查詢語言語言作為數據輸入與管理的接口。
結構化查詢語言語句可以嵌套,這使他具有極大的靈活性和強大的功能。
SQL的全稱是什么
SQL(Structured Query Language)結構化查詢語言,是一種數據庫查詢和程序設計語言,用于存取數據以及查詢、更新和管理關系數據庫系統。同時也是數據庫腳本文件的擴展名。
SQL 面向數據庫執行查詢;SQL 可從數據庫取回數據;SQL 可在數據庫中插入新的記錄;SQL 可更新數據庫中的數據;SQL 可從數據庫刪除記錄;SQL 可創建新數據庫;SQL 可在數據庫中創建新表;SQL 可在數據庫中創建存儲過程;SQL 可在數據庫中創建視圖;SQL 可以設置表、存儲過程和視圖的權限。
SQL語句有哪幾種類型,各類型的主要作用是什么
1、數據操縱語言(DML):用來操縱數據庫中數據的命令。包括:select、insert、update、delete。
2、數據定義語言(DDL):用來建立數據庫、數據庫對象和定義列的命令。包括:create、alter、drop。
3、數據控制語言(DCL):用來控制數據庫組件的存取許可、權限等的命令。包括:grant、deny、revoke。
4、其他語言元素:如流程控制語言、內嵌函數、批處理語句等。
轉載請注明出處華閱文章網 » sql語句作用是什么