
SQL 2005
lhsxsh
aaaaaaaaaaaaaaa
展开
-
sql 2005的 接合函数
COALESCE返回其参数中的第一个非空表达式,当你要在n个字段中选取某一个非空值可以用它,比如下面语句select Coalesce(null,null,1,2,null)unionselect Coalesce(null,11,12,13,null)unionselect Coalesce(111,112,113,114,null)/*---返回结果-----111111----------原创 2008-09-24 13:40:00 · 639 阅读 · 0 评论 -
全局唯一标识符NEWSEQUENTIALID()
------------------------------------------------------------------------------------ Blog : http://blog.youkuaiyun.com/htl258-- Subject: 介绍SQL2005 引入的按顺序生成的全局唯一标识符NEWSEQUENTIALID--------------------转载 2010-05-13 14:22:00 · 1261 阅读 · 0 评论 -
SQL语句得到存储过程关联哪些表名
SELECT DISTINCT [+user_name(b.uid)+].[+b.name+] AS 对象名,b.type AS 类型FROM sysdepends a,sysobjects bWHERE b.id=a.depid AND a.id=OBJECT_ID(过程名); EXEC SP_DEPENDS 过程名;转载 2010-05-13 14:26:00 · 524 阅读 · 0 评论 -
SQL2000/2005字符串拆分为列表通用函数
----------------------------------------------------------------------------SQL2000/2005字符串拆分为列表通用函数IF OBJECT_ID(f_getstr) IS NOT NULL DROP FUNCTION f_getstrGOCREATE FUNCTION f_getstr转载 2010-05-13 14:38:00 · 675 阅读 · 0 评论 -
数据层级显示(根据代码级次显示名称)
IF NOT OBJECT_ID([tb]) IS NULL DROP TABLE [tb]GOCREATE TABLE [tb](GUID INT IDENTITY,[col1] NVARCHAR(10),[col2] NVARCHAR(20))INSERT [tb]SELECT NA,01 UNION ALLSELECT NB,01.01转载 2010-05-13 14:35:00 · 763 阅读 · 0 评论 -
用于分拆字符串的表值函数--cross apply & outer apply
<br />/*<br />功能:将短信分成普通短信<br />Author:庄项琨<br />select * <br />from dbo.uf_MultiMsg('【仁】即人与人之间的亲情善意,是儒家理论和传统道德的核心,其他具体的道德准则都由此衍生而来。仁的根本宗旨是爱人,即对人的亲近与善待。对于什么是“仁”,孔子曰“爱人”,孟子云“仁者爱人”。仁与爱是因果关系,仁是本质,爱是表现,正如朱熹所说“仁者,爱之理。”')<br />*/<br />ALTER function [dbo].[uf_Mul原创 2010-06-18 15:32:00 · 1110 阅读 · 0 评论 -
SqlServer修改当前实例为默认实例
<br /> 在配置数据同步的时候,要求相互同步的两台机器的数据库必须通过默认实例名称进行连接。如果你的默认实例已经删掉了,在当前实例上进行新建发布操作时候,会提示你:<br /> “由于未在SqlServer的此实例上安装复制组件,Microsoft SQL server 无法访问这些组件,请参阅SQL Server……”<br /> <br /> <br /> 注意下面还有一个附加的提示,它的意思就是说默认实例名和当前的实例名称不一致。其实这个才是导致不能复制的主要原因。把它解决了,你就原创 2010-10-08 18:51:00 · 11923 阅读 · 0 评论 -
sql 2005存储过程触发器出现 SQLNCLI" 返回了消息 "该伙伴事务管理器已经禁止了它对远程/网络事务的支持”解决
<br />主要的问题还是MSDTC的设置,找了一篇如下的文章,很帮助:<br /> 关于“COM+ 无法与 Microsoft 分布式事务协调程序交谈<br />出现了“该伙伴事务管理器已经禁止了它对远程/网络事务的支持”的错误,一个很叫人郁闷的错误,找了很多资料,基本的解决方法整理如下:<br /> 1. 单击“开始”,指向“控制面板”,然后单击“添加/删除程序”。 <br /> 2. 单击“添加/删除 Windows 组件”。 <br /> 3. 选择“应用程序服务器”,然后单击“详细信息”。原创 2010-12-13 12:00:00 · 3717 阅读 · 0 评论 -
MS SQL 用户登录信息查询
SQL语句取得当前SQL Server已连接的数据库和用户 select dbname=case when dbid=0 then null when dbid end, loginame from master..sysprocesses where hostname is not null group by dbid,loginame 所有数转载 2013-04-16 16:22:52 · 1813 阅读 · 0 评论 -
SQLServerDBA十大必备工具---让生活轻松点
NO1: PD(PowerDesigner)功能:SysBase公司提供的数据库设计工具,功能很强大,是做数据库设计时必备的工具;下载:http://www.3ddown.com/soft/14524.htm NO2: Log Explorer功能:数据库日志读取工具,主要用来恢复误操作的数据(目前只支持到2005版本),详见:http://blog.youkuaiyun.com/转载 2013-04-25 15:47:26 · 894 阅读 · 0 评论 -
SQLServer DBA 三十问
很多开发人员都想成为一名DBA,也有很多人一开始就把自己定位成为一名DBA,DBA究竟需要掌握些什么知识和技能呢?以下是我做DBA工作和面试DBA时,整理的一些DBA方面的三十个问题,三十个大问题中还有许多小的问题,涵括了SQLServer DBA比较多的技术知识点,与大家分享下,希望给有志做DBA的朋友们一些帮助: 1. char、varchar、nvarchar之间的区别(包括转载 2013-04-25 15:37:33 · 682 阅读 · 0 评论 -
mssql 数据库大小统计方法
一台服务器上所有数据库(也可能是部分数据库)的大小是我们经常需要了解的,它不仅能让我们知道目前数据库使用磁盘的比例,而且定期搜集这些信息,还能了解数据库一段时间的数据增量,更为常用的是在做数据迁移和升级时,方便规划新服务器磁盘容量。这里介绍三种统计数据库大小的方法: 方法一:使用 sp_spaceuseddeclare @dbname varchar(100) declare转载 2013-04-25 15:52:34 · 1518 阅读 · 0 评论 -
mssql数据库系统日常维护关键信息提取
数据库系统异常是DBA经常要面临的情景,一名有一定从业经验的DBA,都会有自己一套故障排查的方法和步骤,此文为为大家介绍一下通过系统性能视图(SQLServer05以上版本)来排查系统异常的基本方法,希望能对大家有所帮助。 这里分两部分来介绍:一. 从数据库连接情况来判断异常:1. 首先我们来看一下目前数据库系统所有请求情况:--request infosel转载 2013-04-25 15:58:32 · 811 阅读 · 0 评论 -
mssql 查看语句运行时间异常的原因(SQLServer)
经常有开发同事反映如下情况:我有一条语句或者一个JOB昨天跑半个小时就完成了,今天怎么跑了两个小时还没有完成?是不是数据库出现问题了? 数据库语句运行时间异常,其实是一个比较复杂的情况,因为数据是不断变动的,今天好好的一条语句,有可能明天运行就不在预计的时间内了,这个场景是没办法完全重溯的,即便有当时的备份数据,但是当时的服务器压力是没有办法知道和营造的;但是好在现在不是要调转载 2013-04-25 16:38:39 · 928 阅读 · 0 评论 -
mssql 根据汉字,得到笔划
set ANSI_NULLS ONset QUOTED_IDENTIFIER ONgo/*************************************功能笔划计算使用方法select [maes2].fun_getbh('中计法')*************************************/ function [maes2].[fun_g原创 2013-04-17 11:51:11 · 654 阅读 · 0 评论 -
SQLServer 高可用、高性能和高保护延伸
很多公司保护数据,最先用到的基本都是备份(这个是必不可少,也是最节约成本的方法了),基本的备份有三种,全备、差异和日志(当然还有基于文件、文件组、Page等的备份方案,不做讨论),如何合理的安排这些备份计划,需要根据应用系统的业务要求和特点来定,还得考虑备份文件的保留时间、备份频率等。本地备份 但是随着数据量的增加,同时考虑一些安全性的原因,将数据都保存到本机硬盘的方案变得转载 2013-04-25 16:20:15 · 955 阅读 · 0 评论 -
处理某分组列值有重复时,只显示分组的首行列值
IF NOT OBJECT_ID([tb]) IS NULL DROP TABLE [tb]GOCREATE TABLE [tb]([chuanming] NVARCHAR(10),[huoming] NVARCHAR(10))INSERT [tb]SELECT N东方,N乙烯 UNION ALLSELECT N东方,N笨 UNION ALL转载 2010-05-13 15:37:00 · 729 阅读 · 0 评论 -
显示每月的日期属于该月的第几周
if object_id(fn_getwk) is not null drop function fn_getwkgo create function fn_getwk( @year int,--输入显示的年份 @month int, --输入显示的月份 @type bit=0 --指定每周的第一天,默认为星期日(中国习惯),如果参数为就是星转载 2010-05-13 14:28:00 · 1351 阅读 · 0 评论 -
字符集之间转换(UTF-8,UNICODE,Gb2312)
特搜集了UTF-8,UNICODE,Gb2312他们3个之间的相互转换.UTF-8: 1~3字节可变UNICODE: 2字节一个字符GB2312: 1字节一个字符例子: “你”字的UTF-8编码: E4 BD A0 11100100 10111101 10100000“你”的Unicode编码: 4F 60 01001111 01100转载 2008-09-26 14:47:00 · 1130 阅读 · 0 评论 -
数据库挂马解决的SQL代码
我主要查看了 http://www.it.com.cn/f/market/089/24/663347.htm /***********定义要去除的字符,请注意,可能不止一条,我的服务器就查到两条你们看自己被注入的内容为主。 ************/declare @delStr nvarchar(500)set @delStr=--set @delStr=/**********转载 2008-12-28 17:00:00 · 1196 阅读 · 5 评论 -
text字段增加处理
--text字段增加处理 --创建测试表create table test(id varchar(3),detail text)insert into testselect 001,A*B select * from test --定义添加的的字符串declare @s_str varchar(8000),@postion intselect @原创 2008-11-26 08:33:00 · 561 阅读 · 0 评论 -
常用数据库代码
--查询与设备数据库自增ID--DBCC CHECKIDENT (GoTone_Pay_per_view, NORESEED) --1547--DBCC CHECKIDENT (GoTone_Pay_per_view, RESEED, 1547) -----chinanetcomlog2006-08-----[192.168.99.21].[chinanetcomlog2006-原创 2009-03-02 09:38:00 · 902 阅读 · 0 评论 -
sql 半角 全角 传化函数
ALTER FUNCTION [dbo].[f_Convert]( @str NVARCHAR(4000), --要转换的字符串 @flag bit --转换标志,0转换成半角,1转换成全角 )RETURNS nvarchar(4000) AS BEGIN D原创 2009-03-04 15:53:00 · 763 阅读 · 0 评论 -
SQL Server进程阻塞的检查和解决办法
create procedure sp_who_lockasbegindeclare @spid int,@bl int,@intTransactionCountOnEntry int,@intRowcount int,@intCountProperties int,@intCounter intcreate table #tmp_lock_who (id int identity(1,1),sp转载 2009-03-19 14:57:00 · 1225 阅读 · 0 评论 -
SQL Server 2005加密与解密
1. 选建一个表来做实验USE [TestDB]GO/****** Object: Table [dbo].[Customer] Script Date: 05/05/2008 13:14:36 ******/SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOSET ANSI_PADDING ONGOCREAT转载 2009-07-13 10:03:00 · 1042 阅读 · 0 评论 -
自动创建MSSQL Server 2005 数据库快照
SQL Server 2005集成了很多新功能,其中一项为数据库快照功能,快照功能是数据库[源数据库]的只读、静态试图。多个快照可以位于一个源数据库中,并且可以作为数据库始终驻留在同一服务器实例上。创建快照时,每个数据库快照在事务上与源数据库一致。在被数据库所有者显式删除之前,快照始终存在。本文将讲述如何演示创建数据库快照和自动创建数据库快照首先,我们来模仿整个快照的创建过程 Step转载 2009-06-06 14:15:00 · 1205 阅读 · 0 评论 -
取过的数据时不被其他用户取到的实现(数据并发处理)
实现一个用户取过的数据不被其他用户取到: 问题: 在用ADO访问数据库时,从一个表中取一定的记录(比如20行),取出后在程序中使用,使用完后删除掉记录(不用更新或删除记录)。在多用户操作下(每个用户采用相同的操作),如何保证一个用户已选取的记录不被其他用户选取? 解决方法: 处理此类问题的一般方法是增加一个标志列,每个用户取的记录设置一个标志,新的用户只从标志为未取的记录中原创 2009-08-31 09:18:00 · 660 阅读 · 0 评论 -
提高SQL执行效率的几点建议
提高SQL执行效率的几点建议: ◆尽量不要在where中包含子查询; 关于时间的查询,尽量不要写成:where to_char(dif_date,yyyy-mm-dd)=to_char(2007-07-01,yyyy-mm-dd); ◆在过滤条件中,可以过滤掉最大数量记录的条件必须放在where子句的末尾; FROM子句中写在最后的表(基础表,driving t转载 2009-09-22 09:23:00 · 473 阅读 · 0 评论 -
Ms-Sql数据库文件太大处理
一、较复杂的压缩日志及数据库文件方法(一)清空日志DUMP TRANSACTION 库名 WITH NO_LOG (二)截断事务日志:BACKUP LOG 数据库名 WITH NO_LOG(三)收缩数据库文件(如果不压缩,数据库的文件不会减小)企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件--选择日志文件--在收缩方式里选择转载 2009-09-23 15:21:00 · 1243 阅读 · 0 评论 -
数据库生成 MD5的方法
select Right(sys.fn_VarBinToHexStr(hashbytes(MD5, 123456)),32)原创 2010-03-05 16:57:00 · 1354 阅读 · 0 评论 -
SQL SERCER 表字段修改 总结
这两天研究了SQL SERVER的字段修改.有一些心得,写出来为日后参考:1,删除字段: ALTER TABLE [tablename] DROP COLUMN [fieldname] 删除的时候该字段必须没有被任何外键引用,没有任何约束.2,删除约束: ALTER TABLE [tablename] DROP CONSTRAINT constraint_name删除约束是约束名不可加单引号.3,原创 2010-01-06 17:41:00 · 2505 阅读 · 0 评论 -
sql2005 同一字段的多条记录,合并成同一条记录
SELECT * into #black2 FROM( SELECT DISTINCT phone FROM #black )A OUTER APPLY( SELECT [userlevels]= STUFF(REPLACE(REPLACE(( SELECT userlevel FROM #black N WHERE phone = A.phone FOR XML AUTO ), ,原创 2010-04-07 16:57:00 · 1122 阅读 · 0 评论 -
关于数据库自增ID数据写入问题的解决
------------自增字段加显式值SET IDENTITY_INSERT GoTone_Health.dbo.[Boss_Sysc_Integral2] ON GOSET IDENTITY_INSERT GoTone_Health.dbo.[Boss_Sysc_Integral2] OFF GO原创 2010-05-08 10:50:00 · 1228 阅读 · 0 评论 -
mssql 使用数据库代码直接生成文本记录
导出一般 常用 SQL中的 右键-属性--导出 选择表,下一步, 选择导出类型,是EXCEL,还是TXT,下一步,下一步,OK!就会导出了。2.导出有三种类型,如下:这是利用BCP来做的,使用SQLServer自带的bcp命令——bcp 数据库名.dbo.表名 out 文件名 –c –q –S”服务器名” –U”用户名” –P”密码”bcp ”select 语句” queryout 文件名原创 2013-04-19 17:34:11 · 825 阅读 · 0 评论