随笔分类 -  MSServer数据库杂项

摘要:事务管理器可用。 (异常来自 HRESULT:0x8004D01B) 说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。异常详细信息: System.Runtime.InteropServices.COMException: 事务管理器可用。 (异常来自 HRESULT:0x8004D01B)后来通过网络找到了解决方案:http://topic.csdn.net/u/20080317/10/47a38236-a8e3-4129-bb8e-818d4951d117.html这是因为"Distributed Tr 阅读全文
posted @ 2012-01-04 08:48 凌鸢 阅读(3177) 评论(1) 推荐(0) 编辑
摘要:--查看所有的触发器中是否包含指定文本select name,text from sysobjects t,syscomments m where type='TR' and m.id=t.id and text like '%T_FY_VARYLISTING%' and t.name in (SELECT name FROM SYSOBJECTS WHERE name LIKE 'TR%') --查看所有的存储过程中是否包含指定文本select name,text from sysobjects t,syscomments m where ty 阅读全文
posted @ 2011-08-30 18:07 凌鸢 阅读(268) 评论(0) 推荐(0) 编辑
摘要:大多数SQL Server表需要索引来提高数据的访问速度,如果没有索引,SQL Server要进行表格扫描读取表中的每一个记录才能找到索要的数据。索引可以分为簇索引和非簇索引,簇索引通过重排表中的数据来提高数据的访问速度,而非簇索引则通过维护表中的数据指针来提高数据的索引。 索引的体系结构: 为什么要不断的维护表的索引?首先,简单介绍一下索引的体系结构。SQL Server在硬盘中用8KB页面在数据库文件内存放数据。缺省情况下这些页面及其包含的数据是无组织的。为了使混乱变为有序,就要生成索引。生成索引后,就有了索引页和数据页,数据页保存用户写入的数据信息。索引页存放用于检索列的数据值清... 阅读全文
posted @ 2011-08-30 13:32 凌鸢 阅读(275) 评论(0) 推荐(0) 编辑
该文被密码保护。
posted @ 2011-07-07 14:54 凌鸢 阅读(2) 评论(0) 推荐(0) 编辑
摘要:T-SQL对字符串的处理能力比较弱,比如我要循环遍历象1,2,3,4,5这样的字符串,如果用数组的话,遍历很简单,但是T-SQL不支持数组,所以处理下来比较麻烦。下边的函数,实现了象数组一样去处理字符串。一,用临时表作为数组。createfunctionf_split(@cvarchar(2000),@splitvarchar(2))returns@ttable(colvarchar(20))asbeginwhile(charindex(@split,@c)<>0)begininsert@t(col)values(substring(@c,1,charindex(@split,@c 阅读全文
posted @ 2011-04-07 12:25 凌鸢 阅读(925) 评论(0) 推荐(0) 编辑
摘要:下表显示了 .NET Framework 类型、DbType 和 SqlDbType 枚举以及 SqlDataReader 的访问器方法。SQL Server 数据库引擎类型.NET Framework 类型SqlDbType 枚举SqlDataReader SqlTypes 类型化访问器DbType 枚举SqlDataReader DbType 类型化访问器bigintInt64BigIntGetSqlInt64Int64GetInt64binaryByte[]VarBinaryGetSqlBinaryBinaryGetBytesbitBooleanBitGetSqlBooleanBoole 阅读全文
posted @ 2011-03-17 14:53 凌鸢 阅读(2371) 评论(1) 推荐(0) 编辑
摘要:SELECT DISTINCT b.VendorName,b.SysNo FROM shipType a WITH(NOLOCK) INNER JOIN vendor b WITH(NOLOCK) ON a.MerchantSysNo=b.SysNo1.select * from classinfoselect *,row_number() over(partition by className order by id) c from classinfoselect * from( select *,row_number() over(partition by className order 阅读全文
posted @ 2011-02-23 12:31 凌鸢 阅读(1255) 评论(0) 推荐(0) 编辑
摘要:总结如下:我创建了一个表,数据如下,SQL> select * from test; A1 A2---------- ---------- 1 3 2 4 3 2 3 5 4 2然后用rank () over,SQL> select a1,a2,rank () over (order by a1) rank from test; A1 A2 RANK---------- ---------- ---------- 1 3 1 2 4 2 3 2 3 3 5 3 4 2 5SQL> select a1,a2,rank () over (order by a2) rank fro 阅读全文
posted @ 2011-02-23 12:00 凌鸢 阅读(8617) 评论(0) 推荐(0) 编辑
摘要:1.where year(A) = year(B) AND month (A) = month(B) AND day(A) = day(B) 实际上可以用更简洁的方式实现where datediff(day,A,B) = 0 同样,要比较A、B是否同年同月的方法是:where datediff(month,A,B) = 0 2.在 ms sql server 的日期函数中可以用"0"来代替日期,"0"表示的日期是1900-01-01 00:00:000。3.去掉getdate() 函数返回的时、分、秒信息 dateadd(day,datediff(day,0,getdate()),0)4.显示 阅读全文
posted @ 2011-01-25 16:33 凌鸢 阅读(290) 评论(0) 推荐(0) 编辑
摘要:SQL Server 2000中,有三个比较类似的功能:他们分别是:SCOPE_IDENTITY、IDENT_CURRENT 和 @@IDENTITY,它们都返回插入到 IDENTITY 列中的值。nbsp; ; IDENT_CURRENT 返回为任何会话和任何作用域中的特定表最后生成的标识值。IDENT_CURRENT 不受作用域和会话的限制,而受限于指定的表。IDENT_CURRENT 返回为... 阅读全文
posted @ 2010-11-04 15:59 凌鸢 阅读(784) 评论(0) 推荐(0) 编辑
摘要:两种实现分页的sql语句第一种,是我之前经常用的.not in其中 '2' 代表这每页显示的信息条数, '4' : 比如页面上的当前页是3页,就是(3-1)*(每个条数)记得如果要排序的话在子查询中排序和筛选条件第二种:用sqlserver2005以上版本中的函数row_number()使用row_number(),目的是让数据以流水号的方式排列,比如1,2,3,4,5.....这样的话 a 表会... 阅读全文
posted @ 2010-10-29 09:24 凌鸢 阅读(396) 评论(2) 推荐(0) 编辑
摘要:Sql Server 中一个非常强大的日期格式化函数Select CONVERT(varchar(100), GETDATE(), 0): 05 16 2006 10:57AMSelect CONVERT(varchar(100), GETDATE(), 1): 05/16/06Select CONVERT(varchar(100), GETDATE(), 2): 06.05.16Select C... 阅读全文
posted @ 2010-10-28 18:58 凌鸢 阅读(366) 评论(0) 推荐(0) 编辑