下面是一个简朴的T-SQL语句的例子:
CREATE DATABASE Movies;
这是一个简朴的T-SQL示例。这将建立一个名为Movies的新数据库。
然则,T-SQL供应了在此语句中包含的其他选项,比方数据库文件应当位于那边、这些文件的大小、它们的最大大小应当是多少,等等。
T-SQL的一些特征包含:
1、顺序编程
2、局部变量
3、支撑字符串处置惩罚、数据处置惩罚、数学等多种功用
4、对DELETE和UPDATE语句的变动。迥殊是,它们许可增加FROM子句,这许可包含衔接。
5、T-SQL有一个BULK INSERT批量插进去语句,许可你以用户指定的花样将数据文件导入数据库表或视图。
上述扩大的重要长处之一是,在运用T-SQL和SQL时,你有更多的可编程性。比方,存储历程许可你将编程逻辑合并到数据库中。你能够将一个或多个参数传递给存储历程,存储历程将返回一个输出,该输出依据参数的值而变化。
T-SQL还包含大批内置函数,以及支撑用户定义的函数。
一个内置函数的例子
下面是另一个基础的例子,此次运用的是T-SQL的内置函数之一:
SELECT GETDATE();
输出:
2018-05-06 23:30:37.003
在本例中,我们运用T-SQL的GETDATE()函数返回当前日期和时候。这与SELECT语句一同运用,SELECT语句是返回数据的经常使用SQL语句。
我们也能够用这个函数作为另一个函数的参数。这里有一个例子:
SELECT FORMAT(GETDATE(), 'MMM');
效果:
May
T-SQL的汗青
虽然Transact-SQL(和SQL Server)最广为人知的名称是Microsoft,但它实际上是Microsoft和Sybase于1987年最先协作的效果。这一伙伴关系于1994年遣散。
今后,T-SQL继承获得两家公司宣布的数据库产物的支撑,然则,每家公司都根据本身的方向开发了本身的数据库产物。因而,Sybase T-SQL和Microsoft T-SQL之间存在一些差别。
T-SQL和GUI东西
Transact-SQL是SQL Server的中心。SQL Server中的大多数操纵都是运用T-SQL完成的。纵然您运用GUI东西(如SSMS或DBeaver)而实际上不举行任何编程,这也是准确的。不管什么时候运用应用顺序与SQL Server交互,应用顺序都邑在背景运用T-SQL实行指定的使命。
但SQL Server并非唯一支撑Transact-SQL的数据库治理体系。Microsoft Azure SQL数据库也支撑T-SQL。应用顺序运用的大多数T-SQL特征在Microsoft SQL Server和Azure SQL数据库中都获得了完整支撑(只管有一些破例)。
关于GO敕令
任何运用过T-SQL的人都能够熟习GO敕令。这个关键字一般放在一批语句的末端。比方,上面的第一个例子也能够如许写:
CREATE DATABASE Movies;
GO
但是,GO敕令实际上不是Transact-SQL的一部分。事实上,GO敕令以至不能占用Transact-SQL语句的统一行。
GO是sqlcmd和osql实用顺序以及SQL Server Management Studio代码编辑器能够辨认的敕令之一,这些敕令能够增进批处置惩罚和剧本的可读性和实行。GO敕令将一批Transact-SQL语句的完毕信号发送给SQL Server实用顺序。
SQL Server实用顺序将GO解释为一个信号,示意它们应当将当前这批Transact-SQL语句发送到SQL Server的一个实例。当前这批语句由自上次实行操纵以来输入的一切语句构成,假如这是第一次实行操纵,则由自迥殊会话或剧本最先实行以来输入的一切语句构成。
其他专有SQL扩大
Transact-SQL不是SQL规范的唯一扩大。种种数据库体系都有本身的扩大。比方,Oracle运用一种私有的历程言语PL/SQL, PostgreSQL运用一种历程言语PL/pgSQL。
只管专有SQL扩大有其长处(比方扩大功用),但它们也有瑕玷。一个重要瑕玷是,假如你须要将数据库从一个体系移植到另一个体系,它们能够会使事变变得难题。比方,假如你的构造倏忽决议运用Oracle而不是SQL Server,你能够须要遍历一切SQL Server代码并为Oracle重写它。这还请求你熟习这两个体系的语法。
相干引荐:《MySQL教程》
以上就是什么是T-SQL?的细致内容,更多请关注ki4网别的相干文章!