随笔分类 -  Sqlserver

摘要:1.openrowset/opendatasource使用在使用openrowset/opendatasource前搜先要启用Ad Hoc Distributed Queries服务,因为这个服务不安全所以SqlServer默认是关闭的启用Ad Hoc Distributed Queries的方法S... 阅读全文
posted @ 2015-01-14 13:08 DageKing 阅读(745) 评论(1) 推荐(1)
摘要:SQL的主键和外键约束转自:http://www.cnblogs.com/ywb-lv/archive/2012/03/12/2391860.htmlSQL的主键和外键的作用:外键取值规则:空值或参照的主键值。(1)插入非空值时,如果主键表中没有这个值,则不能插入。(2)更新时,不能改为主键表中没有... 阅读全文
posted @ 2014-04-17 14:26 DageKing 阅读(615) 评论(0) 推荐(0)
摘要:SQL Server 查询处理中的各个阶段(SQL执行顺序) SQL 不同于与其他编程语言的最明显特征是处理代码的顺序。在大数编程语言中,代码按编码顺序被处理,但是在SQL语言中,第一个被处理的子句是FROM子句,尽管SELECT语句第一个出现,但是几乎总是最后被处理。 每个步骤都会产生一个虚拟表,该虚拟表被用作下一个步骤的输入。这些虚拟表对调用者(客户端应用程序或者外部查询)不可用。只是最后一步生成的表才会返回 给调用者。如果没有在查询中指定某一子句,将跳过相应的步骤。下面是对应用于SQL server 2000和SQL Server 2005的各个逻辑步骤的简单描述。(8)SELEC... 阅读全文
posted @ 2013-04-03 23:20 DageKing 阅读(469) 评论(0) 推荐(0)
摘要:在SQL Server数据库中批量导入数据的四种方法在SQL Server数据库中批量导入数据的四种方法,在软件项目实施的时候,数据导入一直是项目人员比较头疼的问题。其实,在SQL Server中集成了很多成批导入数据的方法。有些项目实施顾问头疼的问题,在我们数据库管理员眼中,是小菜一碟。现在的重点就是,如何让用户了解这些方法,让数据导入变得轻松一些。第一:使用Select Into语句若企业数据库都采用的是SQL Server数据库的话,则可以利用Select Into语句来实现数据的导入。Select Into语句,他的作用就是把数据从另外一个数据库中查询出来,然后加入到某个用户指定的表中 阅读全文
posted @ 2013-03-27 11:06 DageKing 阅读(836) 评论(0) 推荐(0)
摘要:SQL查询优化很多人不知道SQL语句在SQL SERVER中是如何执行的,他们担心自己所写的SQL语句会被SQL SERVER误解。比如:select * from table1 where name='zhangsan' and tID > 10000和执行:select * from table1 where tID > 10000 and name='zhangsan'一些人不知道以上两条语句的执行效率是否一样,因为如果简单的从语句先后上看,这两个语句的确是不一样,如果tID是一个聚合索引,那么后一句仅仅从表的10000条以后的记录中查找就行了 阅读全文
posted @ 2013-03-27 10:57 DageKing 阅读(614) 评论(1) 推荐(0)
摘要:数据库中两张表之间的数据同步增加、删除与更新分别创建增加、删除、更新的触发器(Trigger)来达到两张表之间数据同步的目的。1:数据同步增加:如有两张表——A表和B表,创建触发器使当A表插入数据后B表也同步插入数据。其中B表插入数据的字段需要同A表中的字段相对应。CREATE TRIGGER 触发器名称 ON A表AFTER INSERT AS BEGIN INSERT INTO B表(B表字段1,B表字段2,B表字段3)SELECT A表字段1,A表字段2,A表字段3 FROM INSERTEDEND2.数据同步删除:如有两张表——A表和B表,创建触发器使当A表删除数据后B表也同步删除数据 阅读全文
posted @ 2013-03-27 10:44 DageKing 阅读(999) 评论(0) 推荐(0)
摘要:一个完整的SQL SERVER数据库全文索引的示例SQL SERVER数据库全文索引的示例,以pubs数据库为例。首先,介绍利用系统存储过程创建全文索引的具体步骤: 1) 启动数据库的全文处理功能 (sp_fulltext_database) 2) 建立全文目录 (sp_fulltext_catalog) 3) 在全文目录中注册需要全文索引的表 (sp_fulltext_table) 4) 指出表中需要全文索引的列名 (sp_fulltext_column) 5) 为表创建全文索引 (sp_fulltext_table) 6) 填充全文目录 (sp_fulltext_catalog) ---- 阅读全文
posted @ 2013-03-27 10:41 DageKing 阅读(621) 评论(0) 推荐(0)
摘要:关于数据库优化问题收集 人们在使用SQL时往往会陷入一个误区,即太关注于所得的结果是否正确,而忽略了不同的实现方法之间可能存在的性能差异,这种性能差异在大型的或是复杂的数据库环境中(如联机事务处理OLTP或决策支持系统DSS)中表现得尤为明显。笔者在工作实践中发现,不良的SQL往往来自于不恰当的索引设计、不充份的连接条件和不可优化的where子句。在对它们进行适当的优化后,其运行速度有了明显地提高!下面将从这三个方面分别进行总结:为了更直观地说明问题,所有实例中的SQL运行时间均经过测试,不超过1秒的均表示为(< 1秒)。----测试环境:主机:HP LH II----主频:330MHZ 阅读全文
posted @ 2013-03-27 10:24 DageKing 阅读(258) 评论(0) 推荐(1)
摘要:SQL Server游标的使用游标是邪恶的! 在关系数据库中,我们对于查询的思考是面向集合的。而游标打破了这一规则,游标使得我们思考方式变为逐行进行.对于类C的开发人员来着,这样的思考方式会更加舒服。 正常面向集合的思维方式是: 而对于游标来说: 这也是为什么游标是邪恶的,它会使开发人员变懒,懒得去想用面向集合的查询方式实现某些功能. 同样的,在性能上,游标会吃更多的内存,减少可用的并发,占用宽带,锁定资源,当然还有更多的代码量…… 从游标对数据库的读取方式来说,不难看出游标为什么占用更多的资源,打个比方:当你从ATM取钱的时候,是一次取1000效率更高呢,还是取10次100?既然游标这么“邪 阅读全文
posted @ 2013-03-27 10:17 DageKing 阅读(375) 评论(0) 推荐(0)
摘要:SQL函数说明大全 一旦成功地从表中检索出数据,就需要进一步操纵这些数据,以获得有用或有意义的结果。这些要求包括:执行计算与数学运算、转换数据、解析数值、组合值和聚合一个范围内的值等。下表给出了T-SQL函数的类别和描述。函数类别作用聚合函数执行的操作是将多个值合并为一个值。例如COUNT、SUM、MIN和MAX。配置函数是一种标量函数,可返回有关配置设置的信息。转换函数将值从一种数据类型转换为另一种。加密函数支持加密、解密、数字签名和数字签名验证。游标函数返回有关游标状态的信息。日期和时间函数可以更改日期和时间的值。数学函数执行三角、几何和其他数字运算。元数据函数返回数据库和数据库对象的属. 阅读全文
posted @ 2013-03-27 10:06 DageKing 阅读(646) 评论(0) 推荐(0)
摘要:提高SQL查询效率转载:http://panyi5202.iteye.com/blog/6124141.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:select id from t where num is null可以在num上设置默认值0,确保表中num列没有null值,然后这样查询:select id from t where num=03.应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放 阅读全文
posted @ 2013-03-24 20:18 DageKing 阅读(640) 评论(2) 推荐(1)
摘要:数据库文档CHM生成器(附源代码)背景: 在做项目的时候,当时的数据库文档是txt格式,后来晋升为doc格式。在开发过程中,依旧觉得不方便。后来用动软生成器,发现它可以生成html和doc格式的数据库文档,html用起来相对轻松些。有一天突发奇想,若是弄成CHM文档就好了。期间用过CHM工具一段时间。人是难以满足的,懒惰是永无止尽的。后来嫌弃操作太反锁,在博客园上一位牛人博客中学习了CHM编程。此后一直以代码的方式生成CHM文档。 现在我将它做成了一个相对通用的工具,支持SQL2005及以上,Oracle。易拓展,方便有需要的朋友。资源下载: 文档生成器 示例文档预览 源代码软件及文... 阅读全文
posted @ 2013-03-22 14:46 DageKing 阅读(661) 评论(1) 推荐(0)
摘要:sqlserver数据库出现置疑的解决办法先备份数据库,再用下面的办法:USE MASTERGOSP_CONFIGURE 'ALLOW UPDATES',1 RECONFIGURE WITH OVERRIDEGOALTER DATABASE Database_Name SET EMERGENCYGOsp_dboption 'Database_Name', 'single user', 'true'GODBCC CHECKDB('Database_Name','REPAIR_ALLOW_DATA_LOSS&# 阅读全文
posted @ 2013-03-22 13:05 DageKing 阅读(511) 评论(1) 推荐(0)
摘要:SQLSERVER中分发或合并代理中出现ID标识满阈值处理方法sp_adjustpublisheridentityrange @publication ='发布数据库名', @table_name = null,@table_owner= null[ @publication=] 'publication'在其中重新分配新标识范围的发布的名称。publication 的数据类型为 sysname,默认值为 NULL。 [ @table_name=] 'table_name'在其中重新分配新标识范围的表的名称。table_name 的数据类型为 s 阅读全文
posted @ 2013-03-22 13:04 DageKing 阅读(356) 评论(0) 推荐(0)
摘要:查询数据库中所有表名和表中所有字段名查询表中所有字段名:declare @s varchar(1000)select @s = isnull(@s+',', '') + [name] from syscolumns where id = object_id('表名')select @s--select name from sysobjects where type=1 and flags=0--select name from sysobjects where type='U'查询数据库中所有表名:select Name from 阅读全文
posted @ 2013-03-22 12:43 DageKing 阅读(479) 评论(0) 推荐(1)
摘要:SQL 实现定期备份数据库转自:http://www.cnblogs.com/jx270/archive/2013/03/10/2952568.html----------------------------------------------------------------------------Subject:数据库批量备份存储过程(判断盘符、路径,错误盘符返回,不存在的路径自动创建)--适用环境:SQL Server 2005及以上版本(主要用于作业中调用以及程序开发中调用)------------------------------------------------------- 阅读全文
posted @ 2013-03-14 15:52 DageKing 阅读(648) 评论(0) 推荐(2)
摘要:SQL Server 高性能写入的一些总结1.1.1 摘要 在开发过程中,我们不时会遇到系统性能瓶颈问题,而引起这一问题原因可以很多,有可能是代码不够高效、有可能是硬件或网络问题,也有可能是数据库设计的问题。 本篇博文将针对一些常用的数据库性能调休方法进行介绍,而且,为了编写高效的SQL代码,我们需要掌握一些基本代码优化的技巧,所以,我们将从一些基本优化技巧进行介绍。 本文目录代码中的问题数据库性能开销使用存储过程使用数据库事务使用SqlBulkCopy使用表参数 1.1.2 正文 假设,我们要设计一个博客系统,其中包含一个用户表(User),它用来存储用户的账户名、密码、显示名称和... 阅读全文
posted @ 2013-03-13 10:13 DageKing 阅读(860) 评论(2) 推荐(2)