SQL Server程序设计基础

SQLServer数据类型

系统数据类型SQL Server支持的内置数据类型,系统数据类型有25种。

系统数据类型举例:

字符型:Charn)——n字节,少于n则空格填满,若超长则截掉

        Varchar(n)——n字节,存储长度为实际长度

整型:Int4个字节)、Smallint2个字节)

浮点型:Real4个字节)、Float8个字节)

货币型:Money8个字节)、SmallMoney4个字节)

日期与时间型:Datetime8个字节)、Smalldatetime4个字节)

二进制型:binary(存储长度取决于定义)

文本型:TextNtext(二者存储长度为实际长度)

图形:image(存储长度为实际长度)

用户自定义数据类型用户根据系统数据类型自己定义的数据类型。

创建:

       利用系统存储过程:sp_addtype其语法为:

       sp_addtype type,[system_data_type] [, ’null type’ ]

    其中:type为数据类型的名称。

                  Systemdate type:是SQL Server提供的数据类型,用户定义的数据类型基于该类型。

          Nulltype:指定如何处理null值。

   例子:exec sp_addtype tele,smallint,’not null’

删除:  

使用sp_droptype系统存储过程来撤销用户定义的数据类型。

 例:exec sp_droptype telephone

批处理包含一条或多条的TSQL语句的语句组,这组语句从应用程序一次性发送到SQL Server服务器执行。

             1.      书写批处理时,go语句作为批处理命令的结束标志。当编译器读取到go语句时,会把go语句前面所有的

          语句作为批处理,并将这些语句打包送给服务器。

                2 .   Go语句本身不是TSQL语句的组成部分,只是用于表示批处理结束的前段指令

注释:程序代码中不执行的文本字符串。  

     有两种类型:1.ANSI标准的“——“,用于单行注释。

                 2./* */

变量

系统提供的全局变量:   

         1.      作用范围不仅仅局限于某一程序,而是任一程序可以随时调用。

    2.用户只能使用预先定义的全局变量。

    3.引用全局变量时,必须以标识符“@@“开头

    4.@@error全局变量返回最后执行的TSQL语句的错误代码,数据类型为整型。在SQL Server执行一个T-SQL

      句之后,若成功,则返回值为0,否则返回相应的错误代码。

局部变量:

1.      它的作用范围只局限于程序内部

   2.      局部变量在引用时在其名称前加“@ 

3.      必须用Declare语句定义后才可以使用

其声明形式如下:     

DECLARE @变量名变量类型 [ @变量名变量类型 ....]

       4.局部变量赋值需用SELECT@局部变量=变量值SET@局部变量=变量值

            例:Declare @idchar 10

         Select @id=’10010001’

           注意:局部变量的作用范围从声明该局部变量的地方开始到声明变量的批处理或存储过程的结尾,在局部

            变量的作用范围以外引用该局部变量将产生语法错误。

函数:

函数分类:

1.      行集函数:行集函数可以在Transact-SQL语句中当作表引用。

2.      聚合函数:用于对一组值执行计算并返回一个单一的值。

3.      标量函数:用于对传递给它的一个或多个参数值进行处理和计算,并返回一个单一的值。

1.      系统函数:用于返回SQL Server系统、用户、数据库和数据库对象的信息。

该函数可以让用户在得到信息后,使用条件语句,根据返回的信息对其进行不同的操作。

2.      用户自定义函数:

       1.      标量型函数:返回确定类型标量值。函数体语句在Begin——End句内

       2.      内嵌表值函数:以表的形式的返回一个返回值,返回的是一个表。

      3.多语句表值函数:标量型和内嵌表值型函数的综合,返回的是一个表,但是有一个Begin——End语句括起来的函数体。

流程控制语句:用来控制程序执行和流程分支的命令。

               Begin——End语句:将多个TSQL语句组合成一个语句块,并将它视为一个单元处理。

            语法为:BEGIN
                                                      {sql_statement
                                                                  |statement_block
                                                      }
                                                   END

               While语句:条件语句。Continue语句:跳出本次循环,执行下次循环。

                                                Break语句:跳出while循环。

             Return语句:Return后面的语句不被执行。

             Waitfor语句:暂时停止。Waitfor delay时间间隔——Waitfor语句需等待的时间。

                                                      Waitfor time——Waitfor语句执行后的延时。

             Goto语句:Goto直接跳到标识符处。标识符以“:”结尾。

             Print语句:只输出字符串或字符类型变量。

游标

   声明:Declare,若使用insensitive,则生成临时表。

   打开:Open

   读取:Fetch

   关闭:CloseDeallocate(释放游标)

   语法:DECLARE游标名称 [INSENSITIVE]

                     CURSOR

         [local|global]

          [forward_only|scroll]

                         [read_only]

                    FOR选择语句

                    [FOR [UPDATE [OF字段名称1,字段名称2,…]]

  检查游标状态:@@Fetch_status

      三个返回值:0:成功。—1:读取失败。—2:返回行不是结果集的内容。(非insensitive

 

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 21
    评论
完整清晰 PDF 扫描文档 这个PDF文件是我花钱买来的,现在为了挣积分,拿出来与大家分享!! -------------------------------------------------------------------------------- SQL Server 2008高级程序设计 2/6 SQL Server 2008 2010 高级程序设计 作者:(美)维埃拉 著,杨华,腾灵灵 译 出版社:清华大学 出版日期:2010-4-1 ISBN:9787302222729 字数:1250000 页码:730 -------------------------------------------------------------------------------- 内容提要 -------------------------------------------------------------------------------- Microsoft SQL Server 2008极大地完善了数据库引擎的核心组件,也改变了数据库应用程序的构建方式。《SQL Server 2008高级程序设计》由世界顶尖SQL Server权威专家Robert Vieira编写,旨在指导您熟练运用一系列日趋复杂的功能,助您更高效地管理数据。   本书首先介绍SQL Server 2008的新功能,然后在更详实的示例代码的引导下全面深入地展开论述,讨论了如何编写复杂查询、构建各种数据结构以及提高应用程序性能,还讲述了如何管理高级脚本和数据库以及如何确定和改正脚本错误。   本书提供了快速创建和部署数据驱动的解决方案来满足业务需求的信息,介绍了新数据类型、索引结构、管理功能和高级时区处理等重要内容,掌握这些知识后,您将使自己的数据库发挥㈩最大功效。   主要内容   ◆除规范化外的数据设计技巧   ◆尽量提高应用程序运行速度的方法   ◆有关存储过程和用户定义函数的全部内容   ◆存储过程的高级处理方法   ◆报表服务和集成服务的用法   ◆提高数据库安全性的提示信息   ◆如何利用XML和XQuery支持   ◆通过修改特定数据值进行推理分析的步骤   读者对象   本书面向想要学用所有SQL Server 2008功能的有经验的开发人员。 目录 -------------------------------------------------------------------------------- 第1章 回顾SQL Server中的对象  1.1 数据库的构成  1.2 数据库对象概述  1.3 SQL Server数据类型  1.4 SQL Server对象标识符  1.5 小结 第2章 工具  2.1 联机丛书  2.2 SQL Server配置管理器  2.3 SQL Server Management Studio  2.4 SQL Server Business Intelligence Development Studio  2.5 SQL Server集成服务(SSIS)  2.6 Reporting Services  2.7 BulkCopy Program(bcp)  2.8 SQL Server Profiler  2.9 sqlcmd  2.10 小结 第3章 提出更好的问题:高级查询  3.1 子查询概述  3.2 构建嵌套子查询  3.3 相关子查询  3.4 派生表  3.5 EXISTS运算符  3.6 INTERSECT和EXCEPT运算符  3.7 通用表表达式(CTE)  3.8 递归查询  3.9 合并  3.10 利用外部调用完成复杂操作  3.11 性能考虑  3.12 小结 第4章 XML集成  4.1 XML数据类型  4.2 提取XML格式的关系数据  4.3 有关XML索引的提示  4.4 层次数据概述  4.5 小结 第5章 细心推敲,大胆设计  5.1 进一步了解规范化  5.2 关系  5.3 图表  5.4 逻辑设计与物理设计  5.5 通过经典的BLOB处理基于文件的信息  5.6 子类别  5.7 数据库重用  5.8 反规范化  5.9 通过分区方法进行扩展  5.10 SQL Server关系图工具  5.11 关于日期列  5,12 小结 第6章 核心存储和索引结构  6.1 SQL Server存储  6.2 理解索引  6.3 创建、修改和删除索引  6.4 明智地决定何时何地使用何种索引  6.5 维护索引  6.6 小结 第7章
评论 21
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值