
SQL Server
文章平均质量分 53
wltica
程序员?面向对象编程?没有对象怎么编?
展开
-
SQL Server 文本和图像函数
文本和图像函数用于对文本或图像输入值或字段进行操作,并提供有关该值的基本信息。T-SQL中常用的文本函数有两个,及TEXTPRT函数和TEXTVALID函数。 TEXTPRT(column)函数用于返回对应varbinary格式的text、ntext或者image字段的文本指针值。查找到的文本指针值可应用与READTEXT、WRITETEXT、和UPDATETEXT语句原创 2013-01-22 13:38:50 · 805 阅读 · 0 评论 -
SQL Server 中Transact-SQL的语法规则
符 号 含 义 大写 关键字 斜体 语法中用户提供的参数,使用时需要替换成具体内容。 为了便于读者理解,本书在需要用户提供参数的位置尽量使用中文表示 | 分隔括号或大括号内的语法项目。只能选择一个项目 [ ] 可选的语法项目 { } 必原创 2013-01-30 11:06:08 · 645 阅读 · 0 评论 -
SQL Server char、varchar、nchar、nvarchar 区别
一、前缀n的含义: 数据库中,英文字符只需要一个字节存储就足够了,但汉字和其他众多非英文字符,则需要两个字节存储。如果英文与汉字同时存在,由于占用空间数不同, 容易造成混乱,导致读取出来的字符串是乱码。Unicode字符集就是为了解决字符集这种不兼容的问题而产生的,它所有的字符都用两个字节表示,即英文字符也是用两个字节表示。而前缀n就表示Unicode字符,比如nchar,nvarcha原创 2013-01-11 17:00:24 · 434 阅读 · 1 评论 -
SQL Server 创建存储过程
使用CREATE PROCEDURE 语句创建存储过程: CREATE PROCEDURE 语句基本语法如下: CREATE PROCEDURE [schema_name] procedure_name [;number] { @parameter data type} [ VARYING ] [=default ] [OUT] [OUTPUT] [READONLY] [ WITH ]原创 2013-01-30 11:33:59 · 1878 阅读 · 0 评论 -
SQL Server 视图用法详解
创建视图: T-SQL命令创建视图的基本语法格式如下: CREATE VIEW [schema_name. ]View_name [colum_list] [ WITH ] AS select_statement [ WITH CHECK OPTION ]; schema_name:视图所属框架名称。 view_name:视图名称。 column_list:视图中各个列使用的名称原创 2013-01-31 11:16:50 · 2551 阅读 · 0 评论 -
SQL Server 触发器概述
什么是触发器: 触发器是一种特殊类型的存储过程,它在指定的表中的数据发生变化时自动生效。本节将介绍触发器的基本概念,以及创建和管理触发器的方法。 触发器是一个在修改指定表值的数据时执行的存储过程,不同的是执行存储过程要使用EXEC语句来调用,而触发器的执行不需要使用EXEC语句来调用,通过创建触发器可以保证不同表中的逻辑相关数据的引用完整性或一致性。原创 2013-02-01 11:15:11 · 774 阅读 · 0 评论 -
SQL Server 视图概述
视图是从一个或者多个表中导出的,它的行为与表非常相似,但视图是一个虚拟表。在视图中用户可以使用SELECT语句查询数据,以及使用INSERT、UPDATE、DELETE语句修改记录。对于视图的操作最终会转化为对基本数据表的操作。视图不仅可以方便用户操作,而且可以保障数据库系统的安全。 视图的概念: 视图是一个虚拟表,是从数据库中一个或多个表中导出来的表。视图还可以在已经存在原创 2013-01-31 10:32:18 · 814 阅读 · 0 评论 -
SQL Server 2012的安全性概述
SQLServer 2012整个安全体系结构从顺序上可以分为认证和授权两个部分,其安全机制可以分为5个层级。 (1)客户机安全机制 (2)网络传输的安全机制 (3)实例级别安全机制 (4)数据库级别安全机制 (5)对象级别安全机制 这些层级由高到低,所有的层级之间相互联系,用户只有通过了高一层的安全验证,才能继续访问数据库中低一层的内容。 客户机安全机制——数据库管理系统需要运行在某原创 2013-02-02 13:11:18 · 2145 阅读 · 0 评论 -
SQL Server 聚合函数
聚合函数用于对一组值进行计算并返回一个单一的值。聚合函数经常与查询语句SELECT一起使用。例如,设当前数据库拥有一个员工表employee,其中,有一个工资列salary,要统计所有员工的工资总和,可以使用以下的SELECT语句:SELECT SUM(salary) FROM employee 常用聚合函数: 聚 合 函 数 功 能原创 2013-01-13 15:06:55 · 382 阅读 · 0 评论 -
SQL Server2012的新功能与优势
SQL Server2012的新功能: 1.AlwaysOn。这个功能将数据库的镜像提到了一个新的高度。用户可以针对一组数据库做灾难恢复而不是一个单独是数据库。 2.Colimnstore。这是SQL Server2012独有的功能。它们是数据库查询设计的只读索引。数据被组织成扁平化的压缩形式进行存储,极大地减少了I/O和内存使用。 3.DBA自定义服务器权限。在以往的版本中,用户可以创原创 2013-01-20 17:52:08 · 3301 阅读 · 0 评论 -
SQl 语句大全
SQL分类: DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT) DCL—数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK) 首先,简要介绍基础语句: 1、说明:创建数据库CREATE DATABASE database-name原创 2013-01-13 12:35:36 · 320 阅读 · 0 评论 -
SQL Server 数据类型转换函数
在同时处理不同数据类型的值时,SQLServer一般会自动进行隐式类型转换。这对于数据类型相近的数值是有效的,比如int和float,但是对于其他数据类型,例如整型和字符型数据,隐式转换就无法实现了,此时必须使用显示转换。为了实现这种转换,T-SQL提供了两个显示转换的函数,分别是CAST函数和CONVERT函数。 CAST(x AS type)和CONVERT(type,x)原创 2013-01-22 13:11:40 · 1008 阅读 · 0 评论 -
SQL Server 时间和日期函数
常见的时间和日期函数有: 获取系统当前日期的函数GETDATE() 返回数据库系统的时间和日期,返回值类型为datetime 返回UTC日期的函数UTCDATE() 返回当前UTC(世界标准时间)日期值 获取天数的函数DAY(d) 返回指定日期的d是一个月中的第几天,范围是1到31原创 2013-01-22 13:54:23 · 740 阅读 · 0 评论 -
SQL Server 字符串函数
常见的字符窜函数有以下几种 ASCII()函数 CHAR() 函数 LEFT()函数 RIGHT()函数 LTRIM()函数 RTRIM()函数 STR()函数 字符串逆序的函数REVERSE(s) 计算字符串长度的函数LEN(str) 匹配子串开始位置的函数CHARINDEX(str1,str,[start]) SUBSTRI原创 2013-01-22 12:46:40 · 781 阅读 · 0 评论 -
SQL Server 数学函数
常见的数学函数有: 绝对值函数ABS(x)和返回圆周率的函数PI() 平方根函数SQRT(x) 获取随机数的函数RAND()和RAND(x) 四舍五入函数ROUND(x,y) 符号函数SIGN(x) 获取整数的函数CEILING(x)向上取整和FLOOR(x)向下取整 幂运算函数POWER(x,y)、SQUARE( x)和EXP(x) 对数运算函数LOG(x)和LOG10(x)原创 2013-01-22 13:03:22 · 721 阅读 · 0 评论 -
SQL Server 存储过程分类
SQL Server 2012中的存储过程是使用T-SQL代码编写的代码段。在存储过程中可以声明变量、执行条件判断语句等其他编程功能。SQL Server 2012 中有多种类型的存储过程,总的可以分为如下3类:系统储存过程、用户存储过程和扩张储存过程。 系统存储过程: 系统存储过程是由SQL Server系统自身提供的存储过程,可以作为命令执行各种操作。存储过程主要用来从系统原创 2013-01-29 13:16:54 · 1756 阅读 · 0 评论 -
SQL Server 存储过程概述
存储过程概述 系统存储过程是SQLServer 2012系统创建的存储过程,它的目的在于能够方便地从系统表中查询信息,或者完成与更新数据库表相关的管理任务或其他的系统管理任务。Transact-SQL语句是SQLServer 2012数据库与应用程序之间的编程接口。在很多情况下,一些代码会被开发者重复编写多次,如果每次都编写相同功能的代码,不但繁琐,容易出错,而且由于SQ原创 2013-01-29 09:41:59 · 1312 阅读 · 0 评论 -
SQL Server 排序函数
在SQL Server 2012中,可以对返回的查询结果排序,排序函数提供了一种按升序的方式组织输出结果集。用户可以为每一行,或每一个分组指定一个唯一的序号。SQL Server 2012中有四个可以使用的函数,分别是: 1.ROW_NUMBER函数 2.RANK函数 3.DENSE_RANK()函数 4.NTILE()函数 1.ROW_NUMBER函数为每条记录增添递增原创 2013-01-23 17:22:42 · 1028 阅读 · 0 评论 -
SQL Server 动态查询
前面介绍的各种查询方法中使用的SQL语句都是固定的,这些语句中的查询条件相关的数据类型都是固定的,这种SQL语句称为静态SQL语句。静态SQL语句在许多情况下不能满足要求,不能编写更为通用的程序,例如有一个学生成绩表,对于学生来说,只想查询自己的成绩,而对于老师来说,可能想要知道班级里面所有学生的成绩。这样一来,不同的用户查询的字段列是不相同的,因此必须在查询之前动态指定查询语句的内容,这种根据实原创 2013-01-23 17:37:53 · 1705 阅读 · 0 评论 -
SQL Server 索引的含义和特点
索引用于快速找出在某个列中某一特定值的行。不使索引,数据库必须从第一条记录开始读完整个表,直到找到相关行。如果表中查询的列有一个索引,数据库能快速到达一个位置去搜寻数据,而不必查看所有数据。 索引的含义和特点: 索引是一个单独的、存储在磁盘上的数据结构,他们包含着对数据表里所有记录的应用指针。使用索引用于快速找出在某个或多个列中有一某特定值的行,对相关列使用索引是降低查询操作时间的最原创 2013-01-24 10:47:10 · 974 阅读 · 0 评论 -
SQL Server 索引的创建原则
o(1)索引并非越多越好,一个表中如果有大量的索引,不仅占用大量的磁盘空间,而且会影响INSERT、DELETE、UPDATE等语句的性能。因为当表中数据更改的同时,索引也会进行调整和更新。 o(2)避免对经常更新的表进行过多的索引,并且索引中的列尽可能少。而对经常用于查询的字段应该创建索引,但要避免添加不必要的字段。 o(3)数据量小的表最好不要使用索引,由于数据较少,查询花费的时间可能比遍原创 2013-01-24 11:05:50 · 1031 阅读 · 0 评论 -
SQL Server 索引的分类
不同数据库中提供了不同的索引类型,SQLServer中的索引有两种:聚集索引和非聚集索引。聚集索引和非聚集索引的区别是在物理数据的存储方式上。 聚集索引: 聚集索引基于数据行的键值,在表内排序和存储这些数据行。每个表只能有一个聚集索引,应为数据行本分只能按一个顺序存储。 在聚集索引中,表中各行的物理顺序与索引键值的逻辑(索引)顺序相同。聚集索引通常可加快UP原创 2013-01-24 10:59:25 · 2797 阅读 · 0 评论 -
SQL Server 创建和使用索引
创建索引: (1)在SQL Server Management Studio中,选择并右击要创建索引的表,从弹出菜单中选择“设计”,打开表设计器。右键单击表设计器,从弹出菜单中选择“索引/键”命令,打开“索引/键”对话框。对话框中列出了已经存在的索引,如下图所示。 (2)单击“添加”按钮。在“选定的主/唯一键或索引”框显示系统分配给新索引的名称。 (3)在“列”属性下选择要创建索原创 2013-01-24 11:58:01 · 4986 阅读 · 0 评论 -
SQL Server 中规则的使用
规则的概念: 规则(Rules)是用于执行一些与检查约束相同的功能。检查约束比规则更简明,一个列只能应用一个规则,但是却可以应用多个检查约束。 检查约束可以在CREATE TABLE语句中定义,而规则作为独立的对象创建,然后绑定在指定的列上。 规则也是维护数据库中数据完整性的一种手段,使用它可以避免表中出现不符合逻辑的数据,例如工资小于0。 创建规则: 使用CRE原创 2013-01-24 09:17:57 · 2557 阅读 · 0 评论 -
SQL Server 中的死锁
在两个或多个任务中,如果每个任务锁定了其他的任务试图锁定的资源,会造成这些任务永久阻塞,从而出现死锁。此时系统处于死锁状态。 死锁的原因: 在多用户环境下,死锁的发生是由于两个事物都锁定了不同的资源而又都在申请对方锁定的资源,即一组进程中的各个进程均占有不会释放的资源,但因相互申请其他进程占用的不会释放的资源而处于一种永久等待的状态。形成死锁有4个必要条件: 请求与保持条件:获取原创 2013-01-27 11:14:02 · 802 阅读 · 0 评论 -
SQL Server流程控制语句
流程控制语句: BEGIN…END语句 IF…ELSE语句 CASE函数 WHILE循环 GOTO语句 WAITFOR语句 RETURN语句 ----------------------------------------------------------------------------- BEGIN…END语句用于将多个Transact-S原创 2013-01-13 15:46:40 · 673 阅读 · 0 评论 -
SQL Server 中的游标
查询语句可能返回多条记录,如果数据量非常大,需要使用游标来逐条读取查询结果集中的记录,应用程序可以根据需要滚动或浏览其中的数据。游标通常是在存储过程中使用的,在存储过程中使用SELECT语句查询数据库时,查询返回的数据存放在结果集中。用户在得到结果集后,需要逐行逐列的获取其中包含的数据,从而在应用程序中使用这些值。游标就是一种定位并控制结果集的机制。掌握游标的概念和使用方法对于编写复杂的存储过程是原创 2013-01-28 11:13:37 · 825 阅读 · 0 评论 -
SQL Server 的锁机制
SQL Server支持多用户共享同一数据库,但是,当多个用户对同一个数据库进行修改时,会产生并发问题,是用锁可以解决用户存取数据的这个问题,从而保证数据库的完整性和一致性。对于一般的用户,通过系统的自动锁管理机制基本可以满足是用要求,但如果对数据库安全、数据库完整性和一致性有特殊要求,则需要亲自控制数据库的锁和解锁,这就需要了解SQL Server 的锁机制,掌握锁的只用方法。 锁的内原创 2013-01-27 10:34:29 · 1607 阅读 · 0 评论 -
SQL Server 中的事务
事务的含义: 事务要有非常明确的开始和结束点,SQL Server 中的每一条数据操作语句,例如SELECT、INSERT、UPDATE和DELETE都是隐式事务的一部分。即使只有一条语句,系统也会把这条语句当做一个事务,要么执行所有的语句,要么什么都不执行。 事务开始之后,事务所有的操作都会写到事务日志中,写到日志中的事务,一般有两种:一是针对数据的操作,例如插原创 2013-01-27 09:32:51 · 1273 阅读 · 0 评论 -
SQL Server 支持的4种API服务器游标
1.只进游标 只进游标不支持滚动,它只支持从头到尾顺序提取。行只在数据库中提取出来后才能检索。对所有由当前用户发出或由其他用户提交、并影响结果集中的行INSERT、UPDATE和DELETE语句,其效果在这些行从游标中提取时可见。 由于游标无法向后滚动,则在提取行对数据库中的行进行的大多数更改通过游标均不可见。当值用于确定所修改的结果集中行的位置时,修改后的值原创 2013-01-28 12:56:11 · 826 阅读 · 0 评论 -
SQL Server 中游标的基本操作
对于游标的基本操作主要有以下内容: 声明游标 打开游标 读取游标数据 关闭游标 获取游标的状态和属性 修改游标结果集中的行 删除游标结果集中的行 删除游标 声明游标: 可以使用DECLARE CURSOR语句来声明Transact-SQL服务器游标和定义游标的特性,例如游标的滚动行为和结果集的查询方式等。DECLARE CURSOR的语法结原创 2013-01-28 13:38:12 · 1648 阅读 · 0 评论 -
SQL Server 批处理语句
o批处理是从应用程序发送到SQLServer并得以执行的一条或多条T-SQL语句。使用批处理时,有下面一些注意事项。 o一个批处理中只要存在一处语法错误,整个批处理都无法通过编译。 o批处理中可以包含多个存储过程,但除第一个过程外,其他存储过程前面都必须使用EXECTUE关键字。 o某些特殊的SQL指令不能和别的SQL语句共存在一个批处理中,如CREAT原创 2013-01-21 19:33:10 · 2009 阅读 · 0 评论