SQLSERVER
不停歇的步伐
这个作者很懒,什么都没留下…
展开
-
SqlServer MD5算法实现
<br />/*****************************************************************************<br />* Name: MD5_II<br />* Description: MD5_II<br />*****************************************************************************/<br />CREATE FUNCTION dbo.MD5_II(<br />@a转载 2010-10-11 14:27:00 · 681 阅读 · 0 评论 -
SQL SERVER 查询计划详解
对于SqlServer的优化来说,可能优化查询是很常见的事情。关于数据库的优化,本身也是一个涉及面比较的广的话题,本文只谈优化查询时如何看懂SqlServer查询计划。由于本人对SqlServer的认识有限,如有错误,也恳请您在发现后及时批评指正。 首先,打开【SQL Server Management Studio】,输入一个查询语句看看SqlServer是如何显示查询计划的吧。说明:本文所转载 2011-06-07 00:17:00 · 1496 阅读 · 0 评论 -
SqlServer WITH (NOLOCK)详解
<br />在查询语句中使用 NOLOCK 和 READPAST<br /> 处理一个数据库死锁的异常时候,其中一个建议就是使用 NOLOCK 或者 READPAST 。有关 NOLOCK 和 READPAST的一些技术知识点:<br /> 对于非银行等严格要求事务的行业,搜索记录中出现或者不出现某条记录,都是在可容忍范围内,所以碰到死锁,应该首先考虑,我们业务逻辑是否能容忍出现或者不出现某些记录,而不是寻求对双方都加锁条件下如何解锁的问题。<br /> NOLOCK 和 RE转载 2011-04-23 11:05:00 · 997 阅读 · 0 评论 -
SqlServer 数据库锁 详解
<br />LockType 属性<br />指示编辑过程中对记录使用的锁定类型。<br />设置和返回值<br />设置或返回以下某个 LockTypeEnum 的值。<br />常量 说明<br />adLockReadOnly 默认值,只读。无法更改数据。<br />adLockPessimistic 保守式记录锁定(逐条)。提供者执行必要的操作确保成功编辑记录,通常采用编辑时立即锁定数据源的记录的方式。<br />adLockOptimistic 开放式记录锁定(逐条)。提供者使用开放式锁定,只在调转载 2011-04-23 11:28:00 · 1487 阅读 · 0 评论 -
SqlServer 2005 链接服务器
--创建链接服务器 exec sp_addlinkedserver 链接服务器名称, , SQLOLEDB, 远程服务器名或ip地址 exec sp_addlinkedsrvlogin 链接服务器名称, false ,null, 需要链接服务器用户名, 密码 sp_addlinkedserver转载 2011-06-20 10:39:00 · 917 阅读 · 0 评论 -
SQL Server 2005中的except/intersect和outer apply
如果您在不太关注性能问题的情况下,尽可能的使用简介的sql语句是提高工作效率的一个有效办法,这篇blog将通过实现一个逻辑来讲3个sql server 2005后提供的新方法。 首先,建立两个表: CREATE TABLE #a (ID INT) INSERT INTO #a VALUES (1) INSERT INTO #a VALUES (2) INSERT INTO转载 2012-05-14 18:55:21 · 732 阅读 · 0 评论 -
使用coalesce和nullif的组合来减轻写sql的工作量
今天帮朋友调了一个网站,无意中翻了一个sp,看到了一段很长的select语句,这个select语句之所以长,是因为有好几个一般复杂的case语句跟在select的后面。我们摘取其中的一个字段的逻辑规则和数据来做我们的测试数据: create table tbl (id int, type_a int) insert into tbl values (1000,1000) inse转载 2012-05-14 18:56:00 · 725 阅读 · 0 评论 -
多行记录拼合成字符串
ALTER FUNCTION [dbo].[GetCity_Name] (@AreaID int) --传入区域ID,返回对应的城市拼合字符串 RETURNS varchar(200) BEGIN declare @s varchar(8000) set @s=’’ select原创 2009-12-24 14:01:00 · 666 阅读 · 0 评论 -
SQL2005 自动备份(英文)
Creating Backup Jobs in SQL Server 2005January 09th, 2007 : By Serhiy SnisarenkoThe SQL Server 2005 Maintenance Plan feature has been significantly modified in comparison with SQL 2000: now it utilizes new Integration Services. Also, creating database and转载 2011-05-28 11:43:00 · 2156 阅读 · 0 评论 -
SQL Server 2005中数据库镜像的四个问题
<br />一:什么是数据库镜像?<br /> <br />Robidoux:数据库镜像是将数据库事务处理从一个SQL Server数据库移动到不同SQL Server环境中的另一个SQL Server数据库中。镜像的拷贝是一个备用的拷贝,不能直接访问;它只用在错误恢复的情况下。 <br /> <br />因为是在SQL Server 2005中新引入的特性,这个功能只能用在,这个版本的软件中。在某种程度上说,它是复制和日志传输的混合体:你所有的事物都在事物级别(复制)上移动(日志传输)到你的数据库的一个镜转载 2011-05-21 23:33:00 · 679 阅读 · 0 评论 -
SQL Server 2005 镜像(自己实践总结)
<br />SQL Server 2005相对于SQL Server 2000来说,无论是性能还是功能都有一个相当大的提高,甚至可以用“革命”来形容这一次升级。SQL Server 2005使 SQL Server 跻身于企业级数据库行列。在数据高可用性方面,SQL Server 2005为用户提供了数据镜像、复制、故障转移群集、日志传送功能。本文向读者简单介结SQL Server 2005镜像功能。<br /> 一、镜像简介<br /> 数据库镜像是一个高可用性软件解决方案,为客户端提供小于10秒故障转载 2011-05-21 23:27:00 · 2787 阅读 · 0 评论 -
SqlServer嵌套事务控制
SqlServer中存储过程常常被嵌套执行.而每个存储过程都会有一个<br />独立的事务.即便是简单的一条Insert语句也会是当作隐式事务来执<br />行的.<br /><br />SqlServer提供了控制事务的开关项.很方便.<br /><br />SET XACT_ABORT<br />指定当 Transact-SQL 语句产生运行时错误时,Microsoft® SQL Server™ 是否自动回滚当前事务<br /><br />只要在每个存储过程里显示打开此开关便可轻松解决.<br /><b原创 2010-12-08 10:11:00 · 1762 阅读 · 0 评论 -
SqlServer2005数据库自动备份和删除过期备份
DECLARE @strPath NVARCHAR(200)<br />set @strPath = convert(NVARCHAR(19),getdate(),120)<br />set @strPath = REPLACE(@strPath, ':' , '.')<br />set @strPath = 'E:/sqlbacupk/' + @strPath + '.bak'<br />BACKUP DATABASE [databasename] TO DISK = @strPath WITH NOIN转载 2010-12-28 12:42:00 · 1766 阅读 · 0 评论 -
Sqlserver表数据转换SQL脚本存储过程
<br />使用SQL Server 2000自带的“生成SQL脚本”工具,可以生成创建表、视图、存储过程等的SQL脚本。那么,能否将表中的数据也生成为SQL脚本,在查询分析器中执行这些脚本后自动将数据导入到SQL Server中呢?答案是肯定的。<br />下面的存储过程是一位高人写的,这位高人的姓氏已无人知晓,但SQL Server社区中偶尔还可看到此不朽之作。<br />CREATE PROCEDURE dbo.OutputData <br /> @tablename sysname转载 2010-11-05 15:13:00 · 1382 阅读 · 0 评论 -
SQL Server 2005中配置数据库邮件(脚本)
<br />对于真正的DBA来说,数据库邮件是必不可少的。例如,数据库发生了警报(alert),DBA 希望得到邮件通知,以便即时排除故障。或者是监控数据库作业(SQL Server Job)的运行状况,当检查到失败的作业时,就发送数据库邮件报告给DBA。 <br /> SQL Server 并没有内置邮件服务器(Mail Server),它跟我们发送邮件一样,需要用户名和密码通过 SMTP(Simple Message Transfer Protocol)去连接邮件服务器。我们想让 SQL Server转载 2011-01-06 17:23:00 · 903 阅读 · 0 评论 -
SQL2005 数据库邮件设置
SQL2005 中添加了数据库邮件功能,使用起来还是很方便地。 1、打开SQL Server 2005 外围应用配置器,选择“功能的外围应用配置器”,选择“数据库邮件”,勾选“启用数据库邮件存储过程”,点“确定”退出。 2、建立发送邮件的Sql server用户,例如mailuser ,给mailuesr添加权限,用户映射中添加msdb数据库的“DatabaseMailUserRole”权限。 3、打开 Sql Server Managerment Studio ,展开本地数据库下的“管理”,选择“数据库邮转载 2011-01-06 16:47:00 · 1706 阅读 · 0 评论 -
SQL Server 2005异地备份
<br />前几天做了数据库镜像,现在也要来做做数据库的备份。本方案采用备份至本地然后copy到文件服务器的方法。 <br />SQL server 2005打了sp2的补丁后好像存储过程xp_cmdshell是不能直接用的 显示高级选项(仅需执行一次) <br />EXECsp_configure'show advanced options', 1 <br />GO <br />RECONFIGURE <br />GO*允许执行xp_cmdshell <br />EXECsp_configure'xp_c转载 2011-05-21 22:44:00 · 734 阅读 · 0 评论 -
Sql2005数据库镜像
<br />-- =========================================== <br />-- 无论是主体服务器、镜像服务器, 还是见证服务器 <br />-- 除特别说明外,均需要保证下面的操作在master库中执行 <br />USE master <br />GO <br />-- =========================================== <br />--(1) 建立镜像主体数据库 <br />-- 此操作主体服务器上执行 <br />--转载 2011-05-21 23:01:00 · 2146 阅读 · 0 评论 -
SQL Server 2005 镜像构建手册
<br />数据库镜像是将数据库事务处理从一个SQL Server数据库移动到不同SQL Server环境中的另一个SQL Server数据库中。镜像不能直接访问;它只用在错误恢复的情况下才可以被访问。<br />要进行数据库镜像所需的最小需求包括了两个不同的SQL Server运行环境。主服务器被称为“主机”,第二个服务器被称作“备机”。主机数据库就是你实际用着的数据库,镜像数据库就是你的数据库的备用拷贝。当事务写入你的基本服务器的时候,他们也同样被传送到并写入你的镜像数据库中。<br />除了基本和镜像转载 2011-05-21 23:08:00 · 793 阅读 · 0 评论 -
sql语句一条记录拆分为多条记录
if exists (select 1 from dbo.sysobjects where id = object_id(N't_test')) drop procedure [dbo].[t_test] GO Create table t_test ( id int primary key,LongField varchar(50)) GO Insert Into t_test (id转载 2012-05-17 16:55:44 · 10695 阅读 · 0 评论