语言大都是想通的,高级语言都是简单易懂的。不像汇编语言那么接近底层硬件。像c语言、java语言 、c++语言、c# .net语言等语言基本语句结构一样,(c语言是基础,大家应该都有所了解了 ^_^ ),学会一种像其他语言发展也不是很难。这里说的T-SQL语言看名字就知道和数据库有关,主要用于为数据库的操作命令而服务的。
运行环境及界面展示
(1).运行环境:这里使用的是sql server2012
(2).通过T-SQL语言写的小程序及控制台结果显示:
declare @a int,@b int,@num int,@hello varchar(20) set @hello = 'Hello World' set @a = 1 set @b = 2 set @num = @a + @b print(@hello) print(@num)
结果如下:
(1).其中 'declare'关键字用来声明数据变量及数据类型,程序中第一行声明 int型变量 a,b,num及 varchar型变量hello;
(2).变量需用 '@'符号标识,不使用 '@'标识常量不被识别程序报错。
(3).'set' 关键字一般用于赋值及运算
(4).'print' 输出函数,显示内容在控制台。相当于c语言的输出printf()
(5).注释语句,'--' 相当于C语言的'//','/**/'
(1)选择结构
--三个数的大小 declare @x int, @y int, @z int, @min int, @max int select @x = 2, @y = 3, @z = 4 set @min = @x set @max = @y if @min > @y set @min = @y if @min > @z set @min = @z if @max < @y set @max = @y if @max < @z set @max = @z print('三个数中最大的数是:') print @max print('三个数中最小的数是:') print @min
结果如下:
其中if 可与else组合使用
(2)循环结构--循环结构 求 1/1+ 1/2 +....>10 用了多少步 declare @now float, @time int set @now = 0.0 set @time = 0 while @now <= 10 begin set @time = @time + 1 set @now = @now + 1.0/@time end print('当1/1+ 1/2 +....的值大于10时的程序运算次数为:') print @time
结果如下:
其中begin -- end 相当于{}大括号的作用,包含在begin -- end之间的为一个语句块,同样begin -- end支持嵌套使用。
顺序结构就没被必要通过 T-SQL再写个小程序了。然后上面的两个小程序只是简单的展示部分语句,同样循环结构支持 for 语句,选择结构支持case等。
------------------------------------- then ------------------------------------
到这里还没看出来 T-SQL语言有什么用,如果仅仅是写程序的话其他语言都可以,并且基本的 c语言就能实现。
这里就通过一个实用程序展示一下该语言的用处。该语言支持数据库sql server语句。主要引入程序的思想来解决数据库中对记录,对数据的操作。举个例子,像如果要插入一组数据,数据量很大,单个执行insert 语句是不是要执行多次,而这里循环结构就写几行代码执行即可。
create database zyn --创建数据库 use zyn --创建表test create table test ( id int, name varchar(20), age int, gender varchar(20) ) --修改表结构 alter table test add grade int alter table test alter column gender varchar(15) --小程序:插入10000条记录到test表 declare @_id int, @_age int, @_grade int , @_gender varchar(20), @_name varchar(20) --范围:1-10000 17-25 60-99 m f declare @i int, @j int ,@k int ,@l int, @n varchar(20) set @i = 0 while @i < 10000 begin set @_grade = 0 set @j = 0 set @_id = 0 set @_age = 0 set @k = 0 set @n = '' while @j < 5 begin set @n = @n + CHAR(RAND()*25+65) set @j = @j + 1 end set @_name = @n --age set @_age = RAND()*8+17 --grade set @_grade = RAND()*39 + 60 --gender set @k = RAND()*2 if @k = 0 set @_gender = 'famale' else set @_gender = 'male' --id set @_id = @i + 1 --将生成的数据通过sql语句insert插入表test insert into test values(@_id,@_name, @_age, @_gender, @_grade) set @i = @i +1 end --查询 select * from test
程序查询结果如下:
上程序实现了基本的数据库的创建,表的创建与基本操作,通过 T-SQL程序随机生成的 10000条记录通过 insert语句插入表 test中。
当然该语言的功能不止于此,还可以管理数据库,通过触发器监听对数据进行操作的记录等详细信息到日志文件。可根据用户需求对数据库中的表自由灵活的拆分组合成新的表。T-SQL语言的使用方便了数据库的管理与数据处理。