SQLServer
pj386960300
这个作者很懒,什么都没留下…
展开
-
C#连接数据库和更新数据库
对数据库的操作总体可以分为两类:查询(select)和更新(insert,delete,update)。为什么这样来分呢?仔细看看两类的区别,select只是从数据库中将数据拿出来使用,而其余三者都会对数据库的物理数据进行修改。capucivar在上篇文章中已经对数据库的查询操作进行了详细的阐述。这篇文章将接着阐述更新数据。更新数据库信息首先是连接数据库,这个capucivar在《C#连接数原创 2009-11-03 14:14:00 · 576 阅读 · 0 评论 -
SQL行转列汇总
PIVOT用于将列值旋转为列名(即行转列),在SQL Server 2000可以用聚合函数配合CASE语句实现PIVOT的一般语法是:PIVOT(聚合函数(列) FOR 列 in (…) )AS P完整语法:table_sourcePIVOT(聚合函数(value_column)FOR pivot_columnIN()) UNPIVOT用转载 2013-04-24 17:18:40 · 530 阅读 · 0 评论 -
怎样解密加密的存储过程
/*--破解函数,过程,触发器,视图.仅限于SQLSERVER2000--作者:J9988--*//*--调用示例--解密指定存储过程exec sp_decrypt 'AppSP_test'--对所有的存储过程解密declare tb cursor forselect name from sysobjects where xtype='P' and status>0转载 2013-02-27 19:48:39 · 357 阅读 · 0 评论 -
存储过程加密
存储过程加密 其实,用了这十多年的SQL server,我已经成了存储过程的忠实拥趸。在直接使用SQL语句还是存储过程来处理业务逻辑时,我基本会毫不犹豫地选择后者。 理由如下: 1、使用存储过程,至少在防非法注入(inject)方面提供更好的保护。至少,存储过程在执行前,首先会执行预编译,(如果由于非法参数的原因)编译出错则不会执行,这在某种程度上提供一层天然的屏障。我至今还记转载 2013-02-27 19:47:30 · 791 阅读 · 1 评论 -
SQL时间格式转换大全
SQL时间格式转换大全使用 CONVERT:select convert(datetime ,'20080531',120)---字符转换成日期CONVERT (data_type[(length)], expression [, style])select CONVERT(varchar, getdate(), 120 ) 2004-09-12 11:06:08s转载 2010-01-31 23:39:00 · 939 阅读 · 2 评论 -
MSSQL 数据库修复,语句参考及单用户模式的处理
MSSQL 数据库修复,语句参考及单用户模式的处理修理还原一个库的时候,碰到库不完整的情况,采用DBCC修复。DBCC CHECKALLOC (Transact-SQL)检查指定数据库的磁盘空间分配结构的一致性。http://msdn.microsoft.com/转载 2011-09-29 14:15:13 · 2387 阅读 · 0 评论 -
SQL Server 查询优化之一_索引的结构与分类
一、索引的结构关系型数据库中以二维表来表达关系模型,表中的数据以页的形式存储在磁盘上,在SQL SERVER中,数据页是磁盘上8k的连续空间,那么,一个表的所有数据页在磁盘上是如何组织的呢?分两种情况:一是数据页间无序、随机地存储在磁盘上,这样的表叫做堆表;二是数据页间按某个表字段的值有序地存储在磁盘上,这样的表做索引组织表。索引是什么?从物理结构上可分为两种:聚集索引和非聚集索引。将表中的数据有序地组织起来的索引称为聚集索引,一个表只有一个聚集索引,表上其他的索引都是非聚集索引。1.1、聚集索引结构(1)转载 2010-12-09 17:03:00 · 448 阅读 · 0 评论 -
SQL Server 查询优化之二_索引的遍历与维护
一、遍历索引树的每个节点都是一个页面。索引树有三种类型的节点:根节点、中间节点、叶子节点。根节点与中间节点一样,只包含下一层节点的入口值与入口指针,它们称为索引节点;叶子节点包含要遍历的数据,对聚集索引而言数据就是表中数据行,对非聚集索引数据是指索引列值和行书签。索引的遍历总是从根节点开始,即先根遍历,分为两种:索引扫描和索引查找。索引扫描是指从索引树的根节点开始,对叶子节点逐个扫描,直至命中所有满足查找条件的数据;索引查找是指从索引树的根节点开始,按查找值在索引节点中根据路由信息跳转,直至叶子节点以命中数转载 2010-12-09 17:06:00 · 339 阅读 · 0 评论 -
SQL Server 查询优化之四_索引的碎片与管理
<br />一、索引碎片<br />无论是索引组织表(IOT)还是堆表(HEAP),随着数据的增删改,都会或多或多的产生碎片。碎片的存在,主要对于数据扫描效率有着较大的影响,对于数据查找效率几乎没有影响或者说影响很小,如果想要改善数据查找的效率,进行索引碎片整理并没有什么效果。以下的碎片分类也主要是从数据扫描着眼。<br />1、内部碎片<br />内部指的是页内,即页面的空闲空间。其实填充因子就是一种碎片,为了减少页拆分,宁愿适当地去制造这种碎片。但在大量内部碎片一直处于无法被数据填充的情况下,是没有益处转载 2010-12-09 17:15:00 · 958 阅读 · 0 评论 -
SQL Server 查询优化之三_索引的设计与使用
一、索引的作用1、帮助检索数据;2、提高联接效率;3、节省ORDER BY、GROUP BY的时间;4、保证数据唯一性(仅限于唯一索引)。二、索引的设计在确定要建立一个索引时,首先我们要确定它是聚集还是非聚集、单列还是多列、唯一还是非唯一、列是升序还是降序、它的存储是如何的,比如:分区、填充因子等。下面逐条来看:1、聚集索引(1)首先指出一个误区,主键并不一定是聚集索引,只是在SQL SERVER中,未明确指出的情况下,默认将主键定义为聚集,而ORACLE中则默认是非聚集,即堆表,因为SQL SERVER中转载 2010-12-09 17:13:00 · 438 阅读 · 0 评论 -
SQL 2005 with(nolock)详解
<br />大家在写查询时,为了性能,往往会在表后面加一个nolock,或者是with(nolock),其目的就是查询是不锁定表,从而达到提高查询速度的目的。<br />什么是并发访问:同一时间有多个用户访问同一资源,并发用户中如果有用户对资源做了修改,此时就会对其它用户产生某些不利的影响,例如:<br />1:脏读,一个用户对一个资源做了修改,此时另外一个用户正好读取了这条被修改的记录,然后,第一个用户放弃修改,数据回到修改之前,这两个不同的结果就是脏读。<br />2:不可重复读,一个用户的一个操作是一转载 2010-11-27 16:13:00 · 537 阅读 · 0 评论 -
DBCC用法
DBCC是SQL Server提供的一组控制台命令,功能很强大,掌握一些必要的语句,对操作数据库有不少帮助,所以决定整理一下,发现已有不少类似的整理,减少了不少工作,归类如下: 一、DBCC 帮助类命令 * DBCC HELP('?') 查询所有的DBCC命令 * DBCC HELP('命令') 查询指定的DBCC命令的语法说明 * DBCC USEROPT转载 2014-01-24 09:29:34 · 385 阅读 · 0 评论