摘要:--1、创建表结构CREATE TABLE [tb_loc]( [id] [int], [name] [varchar](16), [parent] [int])GO--2、创建测试数据INSERT tb_loc(id,name,parent) VALUES( 1,'河北省',NULL) INSERT tb_loc(id,name,parent) VALUES( 2,'石家庄',1) INSERT...
阅读全文
摘要:exec master..xp_cmdshell 'net use \\10.5.24.9\framsdb unipecrisk /User:remotehost\frams0917'godeclare @sql varchar(500),@ss varchar(500)select @ss = substring(convert(varchar(10),getdate(),108),1,2)se...
阅读全文
摘要:----加密存储过程事例(encryption)create proc P_Test( @x int)with encryptionasbegin transelect @x + 7commit trango----测试exec P_Test 10----存储过程的注释:SELECT c.id, c.text FROM syscomments c INNER JOIN sysobjects o O...
阅读全文
摘要:--日期转换参数,值得收藏 select CONVERT(varchar, getdate(), 120 ) ---- 2004-09-12 11:06:08 select replace(replace(replace(CONVERT(varchar, getdate(), 120 ),'-',''),' ',''),':','') ---- 20040912110608 select CONV...
阅读全文
摘要:只想使某个IP的计算机才能连接到SQL Server服务器,不允许其他客户端连接。 ----解决方法1 可以直接在防火墙中做限制,只允许与指定的IP地址建立1433的通讯。当然,从更为安全的角度来考虑,应该把1433端口改成其他的端口。 ----解决方法2(限从指定IP接入的客户端) 如果使用SQL Server 2005,还可以通过端点限制的方法来实现,此方法要求一块专门的网卡,所有可以连接SQ...
阅读全文
摘要:SQL语句在进行联接时,发生Cannot resolve collation conflict for equal to operation.错误 ----原因 中文版本MSSQL有默认的数据库排序规则,如果数据库直接还原到英文版本MSSQL上,则有些SQL联接会出现此问题。 如: select a.ID,a.Name,a.Age,b.ClassRoomName...
阅读全文
摘要:/*--调用示例 exec p_compdb 'FERMS_Iran' --*/ use master --注意:该存储过程要建在master数据库中 go if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[p_compdb]') and OBJECTPROPERTY(id, N'IsProcedure'...
阅读全文
摘要:SQL SERVER的分区视图给我们提供了一种实现大数据量管理的方法,类似于其它数据库管理系统的分区视图。不仅实现了表的集中管理,而且实现了数据的快速定位。下边我就以一个日志记录表为例来说以下分区视图的作用: 日志记录表可以记录很长时间的日志信息,随着时间的推移,日志表会变的很大。这样对与表的查询和维护操作都是非常慢的,但是如果我们按日期来划分把表分成若干小表,而在逻辑上统一使用一个视图来查询管理...
阅读全文
摘要:select cast(1234234 as varbinary(100)) select master.dbo.fn_varbintohexstr(cast(1234234 as varbinary(100)))
阅读全文
摘要:use FERMS if exists (select Name from sysobjects where name = 'F_ReturnChildNode' and type = 'TF') drop function dbo.F_ReturnChildNode go /* F----获得子节点 --------返回表中,RBSID为本节点及其子节点 ----多个节点...
阅读全文
摘要:介绍实现复制的步骤。(以快照复制为例) (测试通过) 测试环境: 两台SQL Server 2000服务器A和B,将A配置为发布和分发服务器,B配置为订阅服务器;要发布的数据库为db_test,要发布的出版物为表tb_test; 以下步骤在A上完成: 1、新建一个共享目录,作为发布的快照文件的存放目录,路径为D:\RData,共享名为RData 2、设置SQL代理(SQLSERVERA...
阅读全文
摘要:千分位 convert(varchar,convert(money,123000),1) 去掉小数千分位 reverse(stuff(reverse(convert(varchar,convert(money,123000),1)),1,3,''))
阅读全文
摘要:[翻译]在SQL Server中使用CLR调用.NET方法 介绍我们一起来做个示例,在.NET中新建一个类,并在这个类里新建一个方法,然后在SQL Server中调用这个方法。按照微软所述,通过宿主 Microsoft .NET Framework 2.0 公共语言运行库 (CLR),SQL Server 2005显著地增强了数据库编程模型。 这使得开发人员可以用任何CLR语言(如C#、VB.N...
阅读全文
摘要:/*-- 化解字符串不能超过8000的方法 经常有人提到,用动态生成SQL语句的方法处理数据时,处理语句超长,无法处理的问题,下面就讨论这个问题: 测试环境: --以系统表 syscolumns 为测试数据,要求按xtype为列字段,name为行字段,统计colid的和 --要求结果 xtype filedname_1 fieldname_2 ..... fieldna...
阅读全文
摘要:declare @idoc intdeclare @doc varchar(1000)set @doc =' '--Create an internal representation of the XML document.exec sp_xml_preparedocument @idoc OUTPUT, @doc-- SELECT stm...
阅读全文
摘要:可以通过创建链接服务器exec sp_addlinkedserver 'srv_lnk','','sqloledb','远程服务器名或ip地址'exec sp_addlinkedsrvlogin 'srv_lnk','false',null,'用户名','密码'go 然后查询例如select * from srv_lnk.数据库名.dbo.表名
阅读全文
摘要:之前的老办法, 一般是使用临时表 SELECT TOP 8000 id = IDENTITY(int, 1, 1) INTO # FROM syscolumns a, syscolumns b SELECT A.id, SUBSTRING(A.[values], B.id, CHARINDEX(',', A.[values] + ',', B.id) - B.id) FROM table A, #...
阅读全文
摘要:示例数据 DECLARE @t TABLE(id int, value varchar(10)) INSERT @t SELECT 1, 'aa' UNION ALL SELECT 1, 'bb' UNION ALL SELECT 2, 'aaa' UNION ALL SELECT 2, 'bbb' UNION ALL SELECT 2, 'ccc' --SQL2005 查询处理 SELE...
阅读全文
摘要:select APP_NAME ( ) as w --当前会话的应用程序 select @@ERROR --返回最后执行的 Transact-SQL 语句的错误代码(integer) select @@IDENTITY --返回最后插入的标识值 select USER_NAME() --返回用户数据库用户名 select @@CONNECTIONS --返回自上次SQL启...
阅读全文
摘要:--示例 --示例数据 create table 表一(Item varchar(10),Qty int) insert 表一 select 'A',10 union all select 'A',12 union all select 'A',14 union all ...
阅读全文