SQL Server编程入门
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 | |
同时对多个变量赋值 | 不支持 | 支持 |
表达式返回多个值时 | 出错 | 将返回的最后一个值赋给变量 |
表达式未返回值时 | 变量被赋值为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编程入门的更多相关文章
- SQL Server 编程入门
一.T—SQL 的组成 1.DML(数据操作语言 Data Manipulation Language) 查询.插入.删除和修改数据库中的数据.SELECT.INSERT.UPDATE.DELETE ...
- SQL Server 编程入门经典(3)之T-SQL基本语句
本章内容简介: 如何从数据库检索数据(SELECT) 如何向表中插入数据(INSERT) 如何适当更新数据(UPDATE) 如何删除表中数据(DELETE) 3.1 基本SELECT语句 如果你在此 ...
- Oracle与SQL SERVER编程差异分析(入门)
网上有关Oracle与SQL SERVER性能差异的文章很多,结论往往是让你根据数据量与预算来选择数据库.但实际项目中,特别是使用 .Net 开发的系统,支持以上两种数据库或者更多已经成为Boss的普 ...
- c#Winform程序调用app.config文件配置数据库连接字符串 SQL Server文章目录 浅谈SQL Server中统计对于查询的影响 有关索引的DMV SQL Server中的执行引擎入门 【译】表变量和临时表的比较 对于表列数据类型选择的一点思考 SQL Server复制入门(一)----复制简介 操作系统中的进程与线程
c#Winform程序调用app.config文件配置数据库连接字符串 你新建winform项目的时候,会有一个app.config的配置文件,写在里面的<connectionStrings n ...
- SQL Server复制入门(一)----复制简介【转】
SQL Server复制入门(一)----复制简介 简介 SQL Server中的复制(Replication)是SQL Server高可用性的核心功能之一,在我看来,复制指的并不仅仅是一项技术,而是 ...
- SQL Server编程系列(2):SMO常用对象的有关操作
原文:SQL Server编程系列(2):SMO常用对象的有关操作 在上一篇周公简单讲述了SMO的一些基本概念,实际上SMO体系结构远不止周公在上一篇中讲述的那么简单,下图是MSDN上给出的一个完整的 ...
- SQL Server编程系列(1):SMO介绍
原文:SQL Server编程系列(1):SMO介绍 续篇:SQL Server编程系列(2):SMO常用对象的有关操作 最近在项目中用到了有关SQL Server管理任务方面的编程实现,有了一些自己 ...
- 《SQL Server从入门到精通》
书名 <SQL Server从入门到精通> 图片 时间 2017-6月 学习 书还可以看完不痛不痒 光盘里面是c的视频有趣这是要我学c的节奏啊,可以写一些基础sql语句也是一门语言叫T-s ...
- (转) SQL Server编程系列(1):SMO介绍
最近在项目中用到了有关SQL Server管理任务方面的编程实现,有了一些自己的心得体会,想在此跟大家分享一下,在工作中用到了SMO/SQL CLR/SSIS等方面的知识,在国内这方面的文章并不多见, ...
随机推荐
- 1.Java基础之System对象
毕向东老师Java基础学习笔记——System对象 今天学习Java中的System对象后,感觉这个对象对我们主要有以下几点用处. 1.获取当前操作系统版本和类型. 2.获取当前操作系统的path中的 ...
- mysql小数格式化正确方法
用到小数格式化,mysql了解很肤浅,只会简单的sql语句,于是百度,发现大家都是转载同一个文章,好无语. 而且,结果验证还是不正确,查了官方api,终于写出来了. 另外,还是保存下百度的几个方法: ...
- JS的解析与执行过程
JS的解析与执行过程 全局中的解析和执行过程 预处理:创建一个词法环境(LexicalEnvironment,在后面简写为LE),扫描JS中的用声明的方式声明的函数,用var定义的变量并将它们加到预处 ...
- 4年,如何从草根成长成为CTO-(第一篇)
茫然的求索 那一年,刚好经济危机,毕业了.经过了很长时间的“网上海投”而杳无音讯之后,终于发现“经济危机真的和自己有点关系了” ,曾经以为经济危机和自己巴刚子打不着. 拿着简历,开始到处去跑招聘市场, ...
- 在 WCF 中使用高效的 BinaryFormatter 序列化
本文将定义一个 WCF 终结点行为扩展,以在 WCF 中使用更高效的 BinaryFormatter 进行二进制序列化,并实现对是否使用传统二进制序列化功能的可配置. 介绍 实现步骤 使用方法 效果 ...
- 简析.NET Core 以及与 .NET Framework的关系
简析.NET Core 以及与 .NET Framework的关系 一 .NET 的 Framework 们 二 .NET Core的到来 1. Runtime 2. Unified BCL 3. W ...
- 谈一谈SQL Server中的执行计划缓存(下)
简介 在上篇文章中我们谈到了查询优化器和执行计划缓存的关系,以及其二者之间的冲突.本篇文章中,我们会主要阐述执行计划缓存常见的问题以及一些解决办法. 将执行缓存考虑在内时的流程 上篇文章中提到了查询优 ...
- 学习笔记:HTML5 Canvas绘制简单图形
HTML5 Canvas绘制简单图形 1.添加Canvas标签,添加id供js操作. <canvas id="mycanvas" height="700" ...
- GetEnumerator();yield
GetEnumerator()方法的实质实现: 说明:只要一个集合点出GetEnumerator方法,就获得了迭代器属性,就可以用MoveNext和Current来实现foreach的效果,如上图. ...
- 001.Getting Started -- 【入门指南】
Getting Started 入门指南 662 of 756 people found this helpful Meng.Net 自译 1. Install .NET Core 到官网安装 .NE ...