SQL编程要比Java编程、C#编程简单许多,下面我们直接讲干货21:04:31


使用变量

 局部变量

    在T-SQL中,局部变量的名称必须以标记@作为前缀。T-SQL的局部变量其实和Java中的局部变量的性质是一样的,只是声明和调用的方式有些区别。

    声明局部变量

      declare @StudentNo int    其中的StudentNo是变量名称,是自己设定的。前面的declare是声明变量必须要用到的,不要改变。后面的int则是数据类型。

    变量的赋值:

      声明了变量就要使用,T-SQL中局部变量赋值有两种方法,分别是使用set语句或select语句。

      语法:set @StudentNo = 1 或者 select @StudentNo = 1

      

set语句和select语句的区别
  set select
同时对多个变量赋值 不支持 支持
表达式返回多个值时 出错 将返回的最后一个值赋给变量
表达式未返回值时 变量被赋值为null 变量保持原值

 全局变量:

    SQL Server中的所有全局变量都使用两个@符号作为前缀。下面列举一些常用的全局变量↓

全局变量
变量 含义
@@error 最后一个T-SQL错误的错误号
@@identity 最后一次插入的标识值
@@language 当前使用的语言的名称
@@max_connections 可以创建的、同时连接的最大数目
@@rowcount 受上一个sql语句影响的行数
@@servername 本地服务器的名称
@@servicename 该计算机上的SQL服务的名称
@@timeticks 当前计算机上每刻度的微秒数
@@transcount 当前连接打开的事物数
@@version SQL Server的版本信息

  

  输出语句:

    常用的打印输出语句有两种,print语句和select语句,使用select语句输出数据是查询语句的特殊应用。

    语法:  print 局部变量或字符串

         select 局部变量 as 自定义列名

    使用print打印时可以使用“+”拼接字符串或者其他变量。但是如果变量类型不同时会报错,需要适当转换类型。

  数据类型转换:

    类型转换有两个函数:convert(转换到什么类型,表达式,样式)cast(表达式,转换到什么类型)。这两种函数的不同之处是前者可以设定字符串样式,多用于设定时间。也可不设。

逻辑控制语句

  概述:

    T-SQL中常用的逻辑控制语句有if判断语句,while循环语句,case分支语句。前两者和Java中的语句不同之处在于:Java中条件后面需要加大括号。如果if后面只有一条语句时也可以不加大括号。

    而在T-SQL中,是没有大括号的,是用begin代替‘{’,用end代替‘}’。begin和end在代码中各占单独一行。

    而case语句则类似Java中的switch语句。用case代替‘switch’,用when代替‘case’。并且在T-SQL中case语句是没有break的(循环语句则有break和continue)。

    case语法:

        case

          when 条件1 then 结果1

          when 条件2 then 结果2

          [else 其他结果]        --可选

        end


至此我们已经基本了解了T-SQL中如何声明和使用变量以及逻辑语句的用法。

ps:新手上路,还望大家多提建议


12-15补充:case结构也很像java中的三目运算。可以从不同的角度去理解。

SQL Server编程入门的更多相关文章

  1. SQL Server 编程入门

    一.T—SQL 的组成 1.DML(数据操作语言 Data Manipulation Language) 查询.插入.删除和修改数据库中的数据.SELECT.INSERT.UPDATE.DELETE ...

  2. SQL Server 编程入门经典(3)之T-SQL基本语句

    本章内容简介: 如何从数据库检索数据(SELECT) 如何向表中插入数据(INSERT) 如何适当更新数据(UPDATE) 如何删除表中数据(DELETE) 3.1 基本SELECT语句  如果你在此 ...

  3. Oracle与SQL SERVER编程差异分析(入门)

    网上有关Oracle与SQL SERVER性能差异的文章很多,结论往往是让你根据数据量与预算来选择数据库.但实际项目中,特别是使用 .Net 开发的系统,支持以上两种数据库或者更多已经成为Boss的普 ...

  4. c#Winform程序调用app.config文件配置数据库连接字符串 SQL Server文章目录 浅谈SQL Server中统计对于查询的影响 有关索引的DMV SQL Server中的执行引擎入门 【译】表变量和临时表的比较 对于表列数据类型选择的一点思考 SQL Server复制入门(一)----复制简介 操作系统中的进程与线程

    c#Winform程序调用app.config文件配置数据库连接字符串 你新建winform项目的时候,会有一个app.config的配置文件,写在里面的<connectionStrings n ...

  5. SQL Server复制入门(一)----复制简介【转】

    SQL Server复制入门(一)----复制简介 简介 SQL Server中的复制(Replication)是SQL Server高可用性的核心功能之一,在我看来,复制指的并不仅仅是一项技术,而是 ...

  6. SQL Server编程系列(2):SMO常用对象的有关操作

    原文:SQL Server编程系列(2):SMO常用对象的有关操作 在上一篇周公简单讲述了SMO的一些基本概念,实际上SMO体系结构远不止周公在上一篇中讲述的那么简单,下图是MSDN上给出的一个完整的 ...

  7. SQL Server编程系列(1):SMO介绍

    原文:SQL Server编程系列(1):SMO介绍 续篇:SQL Server编程系列(2):SMO常用对象的有关操作 最近在项目中用到了有关SQL Server管理任务方面的编程实现,有了一些自己 ...

  8. 《SQL Server从入门到精通》

    书名 <SQL Server从入门到精通> 图片 时间 2017-6月 学习 书还可以看完不痛不痒 光盘里面是c的视频有趣这是要我学c的节奏啊,可以写一些基础sql语句也是一门语言叫T-s ...

  9. (转) SQL Server编程系列(1):SMO介绍

    最近在项目中用到了有关SQL Server管理任务方面的编程实现,有了一些自己的心得体会,想在此跟大家分享一下,在工作中用到了SMO/SQL CLR/SSIS等方面的知识,在国内这方面的文章并不多见, ...

随机推荐

  1. TCP ,UDP概念和TCP三次握手连接 的知识点总结

    OSI 计算机网络7层模型 TCP/IP四层网络模型 传输层提供应用间的逻辑通信(端到端),网络层提供的是主机到主机的通信,传输层提供的是可靠服务. TCP 中常说的握手指的是:连接的定义和连接的建立 ...

  2. html标签属性(attribute)和dom元素的属性(property)

    简介 attribute和property都有属性之意,但对于attribute和property的区分其实并不难.从对象来说,attribute是html文档上标签属性, 而property则是对应 ...

  3. 5分钟学会使用Less预编译器

    5分钟学会使用Less预编译器 Less是什么? LESS CSS是一种动态样式语言,属于CSS预处理语言的一种,它使用类似CSS的语法为CSS赋予了动态语言的特性,如变量.继承.运算.函数等,更方便 ...

  4. 【LeetCode】Palindrome Pairs(336)

    1. Description Given a list of unique words. Find all pairs of distinct indices (i, j) in the given ...

  5. PHP实现实现数字补零格式化

    在接支付SDK的时候,第三方回调处理时需要IP,并且IP的需求是:去掉点号,补零到每地址段3位, 如:192168000001 先看看我的实现: <?php $IP = explode ( '. ...

  6. js晋级篇——前端内存泄漏探讨

    1.IE7/8 DOM对象或者ActiveX对象循环引用导致内存泄漏 循环引用分为两种: 第一种:多个对象循环引用 var a=new Object; var b=new Object; a.r=b; ...

  7. 通过Canvas + JS 实现简易时钟实战

    最近通过各种渠道学习了下html5中的canvas元素,为了练练手就随手写了一个简易的时钟.时钟本身不复杂,没有使用图片进行美化,下面就与大家分享一下具体的代码: 这是最终实现的效果: 部分的启发点来 ...

  8. Hibernate框架与Mybatis框架的对比

    学习了Hibernate和Mybatis,但是一直不太清楚他们两者的区别的联系,今天在网上翻了翻,就做了一下总结,希望对大家有帮助! 原文:http://blog.csdn.net/firejuly/ ...

  9. CSS之深入探究Position

    这些天重新整理以前的代码,想对其进行优化,却出现了很多问题,其中一个就是Position,中间自己停下优化代码的工作,特意停下来深入研究了一下Position.现在来分享一下自己的体会吧! 首先我们从 ...

  10. 数据结构:链表(python版)续:带有尾节点引用的单链表

    #!/usr/bin/env python # -*- coding:utf-8 -*- from chapter3.single_linked_list import LNode,LinkedLis ...