Transact-SQL(又稱T-SQL),是在MicrosoftSQLServer和SybaseSQLServer上的ANSISQL實現,與Oracle的PL/SQL性質相近(不只是實現ANSISQL,也為自身數據庫系統的特性提供實現支持),目前在MicrosoftSQLServer和SybaseAdaptiveServer中仍然被使用為核心的查詢語言。
Transact-SQL是具有批量與區塊特性的SQL指令集合,數據庫開發人員可以利用它來撰寫數據部份的商業邏輯(Data-basedBusinessLogic),以強制限制前端應用程序對數據的控制能力。同時,它也是數據庫對象的主要開發語言。
語言結構Transact-SQL以ANSISQL為主要組成,目前Microsoft實現的Transact-SQL可支持到ANSISQL-92標準。
ANSISQL基礎語法支持DDL
主條目:數據定義語言
DDL(DataDefinitionLanguage)是對于數據庫對象的控制語法,對數據庫對象(如數據表,預存程序,函數或自定義類型等)的新增,修改和刪除都使用此語法。
DML
主條目:數據操縱語言
DML(DataManipulationLanguage)是一般開發人員俗稱的CRUD(Create/Retrieve/Update/Delete)功能,意指數據的新增/截?。薷模瘎h除四個功能。
DCL
主條目:數據控制語言
DCL(DataControlLanguage)是由數據庫所提供的保安功能,對于數據庫與數據庫對象的訪問原則與權限,都由DCL定義之。
Transact-SQL可以使用分號";"來分區不同的SQL指令。例如:
INSERTINTOmyTable(myText)VALUES(@myText);SELECT@@IDENTITY
控制流語法Transact-SQL可支持下列的控制流程語法(control-flow):
在Transact-SQL中,可以利用DECLARE來聲明變量,用SET來設置變量值,用SELECT@var=column的方式,由一個陳述式的回傳值中來取得變量值。
DECLARE@vINT--declareavariableSET@v=50--setvariabledirectly.SELECT@v=SUM(Qty)FROMSaleItemRecordsWHERESaleID=53928--setvariablefromaresultofstatement
錯誤處理Transact-SQL可以在區塊中使用下列方式來處理或引發錯誤:
維基百科地址:Transact-SQL
新聞熱點
疑難解答