T-SQL 脚本

  1、USE语句

  USE语句用于设置当前数据库,如果没有USE语句,那么就由执行脚本的任何用户来确定执行脚本时当前数据库是正确的。如果只是一个通用脚本,那么省去USE语句实际上可能更有益。通常,如果在脚本中命名特定于数据库的表(非系统表),那么需要使用USE命令。如果脚本用于修改一个特定的数据库,那么可以发现这是非常有帮助的。否则默认的脚本都对master执行。

USE master

  2、声明变量

  DECLARE语句的语法相当简单:

    DECLARE @<variable name> <variable type>[= <value>][,
    @<variable name> <variable type> [= <value>][,
    @<variable name> <variable type> [= <value>]]]

  可以一次仅仅声明一个变量,也可以一次声明几个变量。人们常常以一次声明一个变量的方式重用DECLARE语句,而不是使用逗号分隔的方法一次声明多个变量。不论选择何种方法,都必须初始化变量(使用"="语法),否则变量值为NULL,直到显示地将其设置为一些其他值。

DECLARE @i int,@j int

  3、设置变量中的值

  3.1使用SET设置变量

  有两种设置变量值方法。可以使用SELECE语句或者SET语句。从功能上看,它们的作用几乎是相同的,不同的是SELECT语句允许元数据值来自SELECT语句中的某一列。

DECLARE @i int,@j int
set @i = 10;
set @j = 20;
select @i + @j

  用查询到的值设置变量

DECLARE @i int
SET @i = (select MAX(Age) from Person)  --注意此行代码,如果去掉外面的括号报错
SELECT @i

  3.2使用SELECT设置变量

  当变量中存储的信息来源于查询时,经常使用SELECT给变量赋值,语法比较简便。

DECLARE @i int
SELECT @i = 100
SELECT @i

  查询的信息为变量赋值:

DECLARE @i int
SELECT @i = MAX(Age) from Person
SELECT @i

设置变量的选择:

  • 当执行简单的变量赋值时,使用SET-这时已知值是一个显式值或其他变量。
  • 当基于查询进行变量赋值时,使用SELECT。

  

				
时间: 2024-10-24 02:40:24

T-SQL 脚本的相关文章

.net(C#)在Access数据库中执行sql脚本

自己写的一个工具类,主要是业务场景的需要. 主要有两个功能: ①执行包含sql语句的字符串 ②执行包含sql语句的文件 调用方式 1 /// <summary> 2 /// 执行sql语句 3 /// </summary> 4 /// <param name="sql">需要执行的sql语句</param> 5 public bool ExecuteSql(string sql, ref string errorMsg) 6 { 7 Se

PowerDesigner生成sql脚本

1.打开PowerDesigner->New Project; 2.填写项目名称,选择文件的存放路径: 3.新建一个模型,New Model: 4.选择概念模型,填写模型名称: 5.选择entity,创建实体模型: 6.点击模型图,填写表结构信息: 时间类型的数据格式说明: 对于创建过程中出现相同字段的情况处理: 更改前: 更改后: 7.将表结构创建完成后,进行表之间的关联,点击relationship将表与表直接关联起来: 选择表与表之间的关系: 8.生成物理模型图: 选择数据库类型 软件会自

mysql命令行导入sql脚本中文变问号问题

之前一直用工具连接mysql虽然小问题不断也都无伤大雅,最近做金融云项目,只能通过服务器的内网访问数据库,也就是说只能在linux下通过命令行访问,在导入中文的时候发现都变成问号了,经过查询资料解决,特此记录一下思路. 1.检查sql脚本文件是否unicode编码,打开查看是脚本文件中中文是否能正常显示. 2.检查所建好的数据库是否采用utf8编码. 3.在mysql命令行下执行status检查Server characterset和Client characterset编码是否一致(我就是这一

[转]基于SQL脚本将数据库表及字段提取为C#中的类

开发时,勉不了需要使用SQL直接与数据库交互,这时对于数据库中的表名及字段名会使用的比较多.如果每使用一次都复制一个,实在蛋疼.所以就考虑将其做成const常量.但是数据库中的表和字段相当多,一个一个敲,不但累,还有可能敲错.要保证正确,最好的办法当然是使用工具或者脚本. 这里提供一个SQL脚本的实现. 原理:获取数据库的表--->遍历每个表中的字段--->生成数据 SQL代码 DECLARE @tableName VARCHAR(MAX)DECLARE @tableCount intDECL

FineUI之使用SQL脚本从数据库表中生成相应的输入控件

在WEB开发时,经常需要依据数据库表中的字段建立相应的输入控件,来获取输入的数据.每次都需要按字段来敲,显然太低效,而且容易出错.这里提供一个SQL脚本生成相应输入控件的方法. USE DBDemo DECLARE @TEMP_TABLE_NAME NVARCHAR(512) DECLARE @WIDTH NVARCHAR(50) SET @TEMP_TABLE_NAME='Stuff' SET @WIDTH='200' SELECT '<f:'+TOKEN+' runat="server

Java执行SQL脚本导入

今天做了一个用java导入sql脚本的功能,前台上传一个sql文件,后台先保存本地,然后进行导入.主要代码如下: String cmd = "cmd /c sqlplus usr/[email protected]{//服务器IP:1521/}sid @d:\\1.sql>d:\\t.log"; Process p = null; try {     p = Runtime.getRuntime().exec(cmd); } catch (IOException e) {    

PowerDesigner如何导出建表sql脚本(转)

1 按照数据库类型,切换数据库. Database-> Change Current DBMS... 2 生成sql脚本 Database -> Database Generation 的Preview选项卡 点击保存按钮,保存产生的sql脚本到本地. [注意]: 1 本人使用的powerDesigner是15.2版本. 2 产生出的sql脚本一般会有drop table的语句,这些语句在运行时可以不要,以防报出表不存在的错误. PowerDesigner如何导出建表sql脚本(转),布布扣,

Oracle导入SQL脚本执行和常用命令

在SQL_PLUS里面执行: sql>@full_path/test.sql;  例:sql>@D:/test.sql;  不需要commit; 一般都是在test.sql 里面最后加上一个commit; 但是需要注意的是:在test.sql文件里面每条语句后必须加上";",代表一条语句的执行. 常用操作: [email protected]命令调用当前目录下的,或指定全路径,或可以通过SQLPATH环境变量搜寻到的脚本文件.该命令使用是一般要指定要执行的文件的全路径,否则

shell中创建mysql库和执行sql脚本

以前执行oracle脚本都是放到plsql中执行 mysql 脚本执行: (1).先创建一个worlddb库 (2).导入sql脚本: 这就ok啦,哈哈.

去掉PowerDesigner生成SQL脚本中字段名带的引号

使用PowerDesigner生成数据库建表SQL脚本时,尤其是Oracle数据库时,表名一般会带引号.其实加引号是PL/SQL的规范,数据库会严格按照""中的名称建表,如果没有"",会按照ORACLE默认的设置建表(DBASTUDIO里面),默认是全部大写,这样,在ORACLE数据库里的字段就如"Column_1".如果你把引号去掉,ORACLE自动默认为全部大写,即"COLUMN_1",所以这段SQL在PL/SQL中执行的