06 2011 档案

摘要:alter database k2 set single_user with rollback immediatealter database k2 set multi_useralter database k2 collate Chinese_Taiwan_Stroke_CI_ASALTER TABLE tbALTER COLUMN colname nvarchar(100) COLLATE Chinese_PRC_CI_AS 阅读全文
posted @ 2011-06-26 14:42 qanholas 阅读(200) 评论(0) 推荐(0) 编辑
摘要:DECLARE @index TABLE(index_name nVARCHAR(max),index_des nVARCHAR(max),index_keys nVARCHAR(max))INSERT INTO @index( index_name, index_des, index_keys)EXEC sp_helpindex 'ycmis.dbo.费用表'--游标模版DECLARE @indexname NVARCHAR(200) DECLARE pcurr CURSOR FOR SELECT index_name FROM @indexOPEN pcurrFETCH N 阅读全文
posted @ 2011-06-25 19:29 qanholas 阅读(442) 评论(0) 推荐(0) 编辑
摘要:sp_fulltext_database 'ENABLE'CREATE FULLTEXT CATALOG FT_Catalog IN PATH 'E:\DB\'AS DEFAULT;/*消息 1833,级别 16,状态 3,第 1 行只有执行了下一个 BACKUP LOG 操作后,才能再次使用文件 'sysft_FT_Catalog'。backup log K2_Org to disk='d:\1.log'*/CREATE FUllTEXT INDEX ON dbo.ProcSummary( SummaryText ,Summar 阅读全文
posted @ 2011-06-23 22:40 qanholas 阅读(576) 评论(0) 推荐(0) 编辑
摘要:if serverproperty('servername') <> @@servername begin declare @server sysname set @server = @@servername exec sp_dropserver @server = @server set @server = cast(serverproperty('servername') as sysname) exec sp_addserver @server = @server , @local = 'LOCAL' end 阅读全文
posted @ 2011-06-20 13:55 qanholas 阅读(172) 评论(0) 推荐(0) 编辑
摘要:相同点:truncate和不带where子句的delete,以及drop都会删除表内的数据不同点:1. truncate和delete只删除数据不删除表的结构(定义)drop语句将删除表的结构被依赖的约束(constrain)、触发器(trigger)、索引(index);依赖于该表的存储过程/函数将保留,但是变为 invalid 状态。2. delete语句是数据库操作语言(dml),这个操作会放到rollback segement中,事务提交之后才生效;如果有相应的trigger,执行的时候将被触发。truncate、drop是数据库定义语言(ddl),操作立即生效,原数据不放到rollb 阅读全文
posted @ 2011-06-19 20:33 qanholas 阅读(382) 评论(0) 推荐(0) 编辑
摘要:通常DBA在监控和优化SQL Server数据库DBA,都想利用命令行工具。其中经常要做的一件事情,就是收集服务器性能数据,包括CPU ,内存和磁盘利用率以及SQL Server特定数据。这时你就可以利用TypePerf.exe这个命令行工具来帮你捕获这些性能数据。 TypePerf.exe是一个命令行工具,包括把Windows操作系统的性能计数器数据输出到命令窗口或写入到支持该功能的日志文件格式中。 Windows操作系统以对象及其相关联的计数器的形式,提供了非常多的性能数据。例如, SQL Server提供了sqlserver统计对象的详细报告,包括了登录、注销、数据库连接等信息; 有些对 阅读全文
posted @ 2011-06-18 23:11 qanholas 阅读(2266) 评论(0) 推荐(0) 编辑
摘要:DBCC SQLPERF ('sys.dm_os_wait_stats', CLEAR); 阅读全文
posted @ 2011-06-18 15:34 qanholas 阅读(151) 评论(0) 推荐(0) 编辑
摘要:select 'H00088' as 工号, '张家栋' as 姓名, '2011-06-01' as 开始日期 , '2011-06-16' as 结束日期, 0 as 总工时 , '休息天数:3天' as 记事 into #t union select 'H00088', '张家栋', '2011-06-01', '2011-06-16', 38.1 ,'异常天数:9天' unionselect 'H00088' , 阅读全文
posted @ 2011-06-16 15:33 qanholas 阅读(327) 评论(0) 推荐(1) 编辑
摘要:DECLARE @dbname VARCHAR(60)SELECT @dbname = CONVERT(VARCHAR(60), DB_NAME())EXEC('DUMP TRANSACTION ['+@dbname+'] WITH NO_LOG') DECLARE @logname VARCHAR(60) SELECT @logname = name FROM sys.sysfiles WHERE name LIKE '%log' EXEC('BACKUP LOG ['+@dbname+'] WITH NO_LOG 阅读全文
posted @ 2011-06-15 21:56 qanholas 阅读(210) 评论(0) 推荐(0) 编辑
摘要:1.0(3),2.0(4),3.5(5),3.5111(78),55.98(23345)12.0(2),3.5(5)4567.0(344),234.43(2323),3.5(5),3.5111(78),55.98(23345)1307155.4658041.500003422773.35580create function toolkindvalues(@str varchar(8000) )returns decimal(18,5)as begindeclare @result decimal(18,5)set @result=0declare @charindex int set @cha 阅读全文
posted @ 2011-06-15 20:38 qanholas 阅读(309) 评论(0) 推荐(1) 编辑
摘要:函数中不能用exec,改存储过程吧. 未在下面的列表中列出的语句不能用在函数主体中。 赋值语句。 控制流语句。 DECLARE 语句,该语句定义函数局部的数据变量和游标。 SELECT 语句,该语句包含带有表达式的选择列表,其中的表达式将值赋予函数的局部变量。 游标操作,该操作引用在函数中声明、打开、关闭和释放的局部游标。只允许使用以 INTO 子句向局部变量赋值的 FETCH 语句;不允许使用将数据返回到客户端的 FETCH 语句。 INSERT、UPDATE 和 DELETE 语句,这些语句修改函数的局部 table 变量。 EXECUTE 语句调用扩展存储过程。 阅读全文
posted @ 2011-06-15 11:35 qanholas 阅读(317) 评论(0) 推荐(0) 编辑
摘要:----DROP TABLE #t--SELECT ROW_NUMBER ( ) OVER( PARTITION BY tid ORDER BY tablename ) cid,* --into #t --FROM--(--SELECT TOP 100 PERCENT DENSE_RANK ( ) OVER( ORDER BY a.name ) tid,-- a.name AS tablename,-- d.name AS columnname,-- d.cname AS type --FROM sysobjects a-- JOIN (SELECT c.name AS cname,b.* F 阅读全文
posted @ 2011-06-14 14:29 qanholas 阅读(324) 评论(0) 推荐(0) 编辑
摘要:相对于传统的循环和游标方式生成数据,"GO n"方式更加简洁。虽然效率低下,但是也不失为一种方法(更高效的可以用row_number+sys.all_columns方式)。view sourceprint?-- 创建测试表use tempdbgo CREATE TABLE [dbo].[Tally]( [N] [int] IDENTITY(1,1) NOT NULL, CONSTRAINT [PK_Tally] PRIMARY KEY CLUSTERED( [N] ASC)) ON [PRIMARY] -- 设置环境SET NOCOUNT ONGOSET IDENTITY_ 阅读全文
posted @ 2011-06-12 11:57 qanholas 阅读(381) 评论(0) 推荐(0) 编辑
摘要:create proc p_helpindex @tbname sysname ='' ,@type char(1) = '1'as--生成索引信息及索引创建脚本 --author : perfectaction--@tbname 表名,空返回所有表索引--@type 是否显示聚集索引,1显示聚集索引,2不显示聚集索引--调用:p_helpindex 'dbo.customers','1'with t as (select rank() over (order by b.name,a.name,c.name) as id,c.in 阅读全文
posted @ 2011-06-11 18:18 qanholas 阅读(383) 评论(0) 推荐(0) 编辑
摘要:今天遇到这样一个细节问题,有个同事为了提高SQL执行效率使用sysindexes.rows来快速的计算表的行数结果发现取出来的行数根本就不是实际表中的行数就好比这样为了获得表中的记录数,一般都使用下面的SQL语句: SELECT COUNT(*) FROM dbo.orders但这条语句会执行全表扫描才能获得行数。 下面的SQL语句不会执行全表扫描一样可以获得行数:SELECT rows FROM sysindexes WHERE id = OBJECT_ID('表名') AND indid < 2网上很多优化文章都推荐这种做法,无可厚非,这种计算 sysindexes 阅读全文
posted @ 2011-06-09 16:24 qanholas 阅读(429) 评论(0) 推荐(0) 编辑
摘要:1、首先要搞明白什么叫执行计划? 执行计划是数据库根据SQL语句和相关表的统计信息作出的一个查询方案,这个方案是由查询优化器自动分析产生的,比如一条SQL语句如果用来从一个10万条记录的表中查1条记录,那查询优化器会选择“索引查找”方式,如果该表进行了归档,当前只剩下5000条记录了,那查询优化器就会改变方案,采用“全表扫描”方式。 可见,执行计划并不是固定的,它是“个性化的”。产生一个正确的“执行计划”有两点很重要: (1) SQL语句是否清晰地告诉查询优化器它想干什么? (2) 查询优化器得到的数据库统计信息是否是最新的、正确的? 2、统一SQL语句的写法 对于以下两句SQL语句,程序员认 阅读全文
posted @ 2011-06-09 14:01 qanholas 阅读(558) 评论(0) 推荐(0) 编辑
摘要:在SQL Server 2005下自带的函数HashBytes() ,此函数是微软在SQL Server 2005中提供的,可以用来计算一个字符串的MD5和SHA1值,使用方法如下:--获取123456的MD5加密串select hashbytes('MD5', '123456') ;--获取123456的SHA1加密串select hashbytes('SHA1', '123456') ;有了这个函数可以在SQL Server中为字符串进行加密,但是HashBytes() 函数的返回结果是VarBinary类型(以 0x 开头 阅读全文
posted @ 2011-06-09 13:52 qanholas 阅读(14848) 评论(1) 推荐(2) 编辑
摘要:"D:\Program Files\VM\vmware-vdiskmanager.exe" -c -s 1000Mb -a lsilogic -t 2 "D:\Quorum.vmdk""D:\Program Files\VM\vmware-vdiskmanager.exe" -c -s 10Gb -a lsilogic -t 2 "D:\ShareDisk.vmdk"disk.locking = "false"diskLib.dataCacheMaxSize = "0"scs 阅读全文
posted @ 2011-06-01 19:25 qanholas 阅读(764) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示