
数据库
nutian
这个作者很懒,什么都没留下…
展开
-
多个表联合查询的一些问题解决,用一个表里面的查询结果来排除另外一个表的查询结果
B表中查出的结果中,不能包含表A里面的查询到的id,select a.*from a, bwhere a.id 以上语句一般时候没问题,但当b表为空时,本来就设想应该返回a表的全部项,但实际结果却什么项都没返回,就是因为b表为null后,联合就也是null.只好采用left jion,select a.*from a, left jion on b.id 结果又发现left j原创 2008-01-16 18:35:00 · 3032 阅读 · 0 评论 -
sql 2000创建分区视图,注意事项
分区视图出现:“不可更新,因为没有找到分区列” 问题--原因是约束被禁用了,所以提示找不到分区列 --启用这些约束就行了 ALTER TABLE InOutM2004 CHECK CONSTRAINT ALL ALTER TABLE InOutM2003 CHECK CONSTRAINT ALL go -----------------------原创 2008-04-11 18:31:00 · 1875 阅读 · 0 评论 -
sql 2000 分布式分区视图的创建步骤
经验:当组成分区表的小表结构发生变化,必须要删除分区表,然后每个小表的约束也要删除然后重建约束,即使约束没有改变,也必须这样操作,全部小表约束重建完成,再重新建立分区表.建立分区表时,可能直接写入分区表的组成语句会失败,提示"视图定义中没有输出列或 FROM 子句中没有项目",只有先建立一个单表的分区表,然后双击分区视图,修改分区表的语句,才能成功,采用"设计视图"功能修改语句总是会失败,原因转载 2008-04-11 18:36:00 · 1296 阅读 · 0 评论 -
同步复制数据库,当网络问题,服务器间断开连接,复制中断后,自动继续复制的设置
网络因为各种原因被断开,服务器间失去了连接,这时会看到订阅代理程序失败,然后就停止运行,并且复制也终止了,只有手动重新启动订阅代理,复制又会继续进行,那么可以让订阅被中断后,slq自动连接,当网络正常后自动继续复制工作吗?可以,设置代理失败后,自动启动代理,自动尝试连接,方法:发布服务器--服务监视器--对请求订阅的代理服务器右键--代理属性--步骤,在这里调整代理失败后进行怎样的操作,选择一原创 2008-04-11 09:57:00 · 1883 阅读 · 0 评论 -
建立时间索引后,按照时间排序来获得列表的查询,速度增快了不少
一个论坛中搜评论列表没创建时间索引前: 总共 其中排序 取行 0.0617 0.0381 0.0235 使用了聚集索引创建索引后: 0.00699 0.00036 0.00663 使用了普通索引全表搜评论列表创建索引前 0.222 0.119539 0.103411使用了聚集索引创建索引后: 0.00681 0.000349 0.006462使用了普通索引具体一原创 2008-01-17 11:54:00 · 6759 阅读 · 0 评论 -
直接得到该数据库中所有表的信息
在sql数据库中通过在sql查询分析器中执行直接得到该数据库中所有表的信息, set nocount on exec sp_MSForEachTable @precommand=N create table ##( id int identity, 表名 sysname, 字段数 int, 记录数 int, 保留空间 Nvarchar(10), 使用空间 varchar(转载 2008-04-08 17:43:00 · 837 阅读 · 0 评论 -
sqlserver 2000中存入大于65535长度的内容报错的处理
现象:存入图像时程序出现错误提示:要复制的text ntext或image数据的长度(22333434)超过了所配置的最大长度65535 解答:出现这种问题是你配置了发布,默认设置下,只能发布65535大小的image字段,到查询分析器中执行下面的语句,完成后重新启动sql服务即可exec sp_configure max text repl size (B),2147483647转载 2008-04-06 19:28:00 · 1373 阅读 · 0 评论 -
在ASP.NET中重写URL
【原文地址】Tip/Trick: Url Rewriting with ASP.NET 【原文发表日期】 Monday, February 26, 2007 9:27 PM 经常有人请我指导应该如何动态地“重写”URL,以在他们的ASP.NETweb应用中发布比较干净的URL端点。这个博客帖子概述了几个方法,你可以用来在ASP.NET中干净地映射或重写URL,以及按照你自己的需求组转载 2008-04-02 00:25:00 · 674 阅读 · 0 评论 -
整理SQL索引碎片提速
整理SQL索引碎片提速检查索引碎片DBCC SHOWCONTIG(表)-- DBCC SHOWCONTIG 正在扫描 t_ICItem 表...-- 表: t_ICItem(98099390);索引 ID: 1,数据库 ID: 12-- 已执行 TABLE 级别的扫描。-- - 扫描页数.....................................: 20229-- - 扫转载 2008-04-02 01:14:00 · 1360 阅读 · 0 评论 -
sql server日志文件总结及日志满的处理办法
sql server日志文件总结及日志满的处理办法 交易日志(Transaction logs)是数据库结构中非常重要但又经常被忽略的部分。由于它并不像数据库中的schema那样活跃,因此很少有人关注交易日志。 交易日志是针对数据库改变所做的记录,它可以记录针对数据库的任何操作,并将记录结果保存在独立的文件中。对于任何每一个交易过程,交易日志都有非常全面的记录,根据这些记录可以将数据文件恢复转载 2008-04-02 00:51:00 · 885 阅读 · 0 评论 -
SQLSERVER备份和对日志的处理
SQLSERVER备份和对日志的处理在网上看到许多关于数据日志文件太大如何处理的问题,也看到了许多不合实际的做法,也有人因为错误的操作但是没有日志而急得焦头烂额,其实数据库的日志文件是记录数据库 UPDATE,DELETE 操作的踪迹,也是当数据库发生意外(如黑客攻击,系统数据库发生破坏破坏等)时我们能够让数据库恢复至特定时刻的保证,所以它很重要!!我们应该对数据库进行日志备份!我们现在来分析一下转载 2008-04-02 00:11:00 · 6402 阅读 · 0 评论 -
mssql数据库最大容量规范和限定
最大容量说明第一个表说明对于所有 Microsoft® SQL Server™ 2000 版本都相同的最大容量。第二个和第三个表说明因 SQL Server 2000 的版本和操作系统的不同而异的容量。下表说明在 Microsoft SQL Server 数据库中定义的,或在 Transact-SQL 语句中引用的各种对象的最大值(数量或大小)。下表不包含 Microsoft® SQL S转载 2008-04-22 00:57:00 · 9526 阅读 · 0 评论 -
存储过程与函数的区别,函数可以嵌入sql语句from中使用,存储过程不行
存储过程与函数的区别 本质上没区别。只是函数有如:只能返回一个变量的限制。而存储过程可以返回多个。而函数是可以嵌入在sql中使用的,可以在select中调用,而存储过程不行。执行的本质都一样。 函数限制比较多,比如不能用临时表,只能用表变量.还有一些函数都不可用等等.而存储过程的限制相对就比较少 由于我现在基本上是DBA的工作,因此平时也看一些数据库方面的书籍。但转载 2008-04-21 14:03:00 · 4804 阅读 · 0 评论 -
分区表的作用和使用深入分析(如何用分区表来优化数据库)
在 Microsoft SQL Server 2000 数据仓库中使用分区摘要:本文介绍如何使用分区来改善 SQL Server 2000 Enterprise Edition 中数据仓库的可管理性、查询性能和加载速度,并讨论关系型数据库和分析服务多维数据集中的矢量架构的水平分区。目录概述在 SQL Server 2000 关系型数据仓库中使用分区在 SQL Server 2000转载 2008-07-17 17:21:00 · 9231 阅读 · 1 评论 -
sql全文索引的工作原理,及其优化
学习如何充分利用 SQL Server 2000 的全文搜索功能。本文包含有关实现最大吞吐率和最佳性能的几点提示和技巧。 简介使用 Microsoft? SQL? Server 2000 的全文搜索功能,可以对在非结构化文本数据上生成的索引执行快速、灵活的查询。常用的全文搜索工具是网站的搜索引擎。为了帮助读者理解全文搜索功能的最佳使用方法,本文介绍了大量抽象概念;并对优化全文索引和查询以实现最大吞转载 2009-06-22 20:51:00 · 2248 阅读 · 0 评论 -
sql 数据库全文索引的总结
最近搜索了一下全文检索,发现了一些问题,现在总结如下: 全文索引和查询概念(摘自SQL 联机帮助) 全文索引、查询和同步化最主要的设计要求是,在注册进行全文检索的所有表上都有一个唯一的全文键列(或者单列主键)。全文索引对使用的重要字及其所在位置进行跟踪。 例如,假定有一个对 DevTools 表的全文索引。全文索引可能指出在 Abst转载 2009-06-22 19:58:00 · 1126 阅读 · 0 评论 -
SQL查询分析器远程单步调试存储过程的解决之道?
SQL查询分析器远程单步调试存储过程的解决之道?测试环境为服务器为win2003,sqlserver2k,sql server 2000 sp4客户端为win2003,sqlserver2k,sql server 2000 sp4第一步:将服务器【身份验证】属性设置成【混合模式】(window与sql身份验证)第二步:在【控制面板】中打开【服务】将【MSSQLSERVER】服务打开【属性】转载 2008-12-11 11:38:00 · 1166 阅读 · 0 评论 -
要控制数据库管理员对数据库的权限
--要控制对数据库的权限, 可以参考下面的: -- 防止访问他不该访问的数据库(总控制,明细还可以控制他对于某个数据库的具体对象具有的权限) --切换到你新增的用户要控制的数据库 use 你的库名 go --新增用户 exec sp_addlogin test转载 2009-02-14 09:09:00 · 1936 阅读 · 0 评论 -
在一个机机上让 Microsoft SQL Server 2000 + 2005 + 2008 三个版本共存
实践证明,SQL Server 2000 + 2005 + 2008,完全可以共存,注意区别: (1)只要实例名不同即可(如:默认实例、命名实例SQL2005、命名实例SQL2008)。 (2)2005 与 2008要求的 .NET Framework 版本不一样,2005 要求 2.0,而 2008 要求 3.5 SP1; (3)特别要注意的是,安装 SQL2008 的机器上如果安装过开发工转载 2009-02-14 09:02:00 · 1043 阅读 · 0 评论 -
2008年 最新海量数据分页
看了很多海量数据分页,大都都是单表的,而且当数据增大时效率下降但是排序的列不能有重复值,而在sql 2005 里通过 OVER子句可以解决,不过它也只是在后台把查询结果加一列,然后所有数据查一遍,每条记录插入序号,当有上千万数据时效率也是有点低的。 所以我归纳了下,如果排序的列有重复,就用sql2005 的存储过程,否则用我写的存储过程 sql 2005的存储过程: create PROC转载 2009-02-14 08:57:00 · 839 阅读 · 0 评论 -
关于 字符串中的单引号, 在sql存储过程中的传输总结; 逗号分隔的多个变量提取方法.
关于 字符串中的单引号, 在sql存储过程中的传输总结在存储过程中或者sql查询分析器中,字符串中的单引号必须采用2个单引号来转义,即表示,而在.net平台调用存储过程,输入的字符串参数中有单引号,却不需要转义,.net平台在传入sql数据库之前会自动转义单引号. 存储过程中,提取逗号分割的多个变量,采用replace的方法,效率高,SET @sqlStr = UPDA原创 2008-10-05 11:58:00 · 6159 阅读 · 1 评论 -
【微软】了解 SQL Server 2000 中的“复制数据库向导”及其疑难解答
了解 SQL Server 2000 中的“复制数据库向导”及其疑难解答察看本文应用于的产品文章编号 : 274463 最后修改 : 2004年5月31日 修订 : 6.0 本页概要更多信息“复制数据库向导”的运行方式向导创建“数据转换服务”(DTS) 包“复制数据库向导”日志 — DTS 包日志复制文件的权限切记数据库分离分离数据库的权限确转载 2008-06-14 10:25:00 · 1155 阅读 · 0 评论 -
编程实现备份和还原数据库
编程实现备份和还原数据库http://blog.youkuaiyun.com/bergn/archive/2004/11/30/199808.aspx转载 2008-04-01 00:04:00 · 733 阅读 · 0 评论 -
MS SQL2000数据库自动备份技术
MS SQL2000数据库自动备份技术http://yjyy20.blog.163.com/blog/static/26459462007924102654736/转载 2008-03-31 23:57:00 · 772 阅读 · 0 评论 -
修改MS SQL2000的端口
先总结:修改ms sql服务器的端口后:1.企业管理器中要登陆该服务器的注册,必须要在客户端网络实用工具--别名里面添加网络库配置,匹配端口;2.查询分析器要登陆该服务器,同上;3.订阅服务器要连接该服务器,正常同步复制,必须要在客户端网络实用工具--常规--tcp/ip匹配端口.4.在程序中,SQL的连接对象的定义,必须在服务器后添加该端口号即可,Data Source=服务器名,端口号;中转载 2008-03-20 21:17:00 · 5147 阅读 · 0 评论 -
解决xml中&符号"&"输入问题的一个思路
utf-8的内容,我输入&采取标准输法"&",节过通过xml存入数据库后,直接变成了"&",而从数据库取出时,也是"&",而不是输入的"&",于是采用"&"方式输入,输出就是"&";了.搞定!原创 2007-08-02 16:41:00 · 8509 阅读 · 1 评论 -
解决了c#捕获sql错误号的问题和将sql连接用application放在global中作全局变量问题
解决了c#捕获sql错误号的问题和将sql连接用application放在global中作全局变量问题一、获取sql错误号try { row = CmdObj.ExecuteNonQuery(); //执行sql语句 }<br /> catch(SqlException e) {<br /> switch(e.Errors[0]原创 2007-07-29 09:41:00 · 2836 阅读 · 1 评论 -
给SQL Server传送数组参数的变通办法
最近一直在做Dnn模块的开发,过程中碰到这么一个问题,需要同时插入N条数据,不想在程序里控制,但是SQL Sever又不支持数组参数.所以只能用变通的办法了.利用SQL Server强大的字符串处理传把数组格式化为类似"1,2,3,4,5,6"。 然后在存储过程中用SubString配合CharIndex把分割开来 详细的存储过程 CREATE P转载 2007-07-30 23:31:00 · 768 阅读 · 0 评论 -
实现小数据量和海量数据的通用分页显示存储过程
建立一个 Web 应用,分页浏览功能必不可少。这个问题是数据库处理中十分常见的问题。经典的数据分页方法是:ADO 纪录集分页法,也就是利用ADO自带的分页功能(利用游标)来实现分页。但这种分页方法仅适用于较小数据量的情形,因为游标本身有缺点:游标是存放在内存中,很费内存。游标一建立,就将相关的记录锁住,直到取消游标。游标提供了对特定集合中逐行扫描的手段,一般使用游标来逐行遍历数据,根据原创 2007-07-30 22:49:00 · 1105 阅读 · 0 评论 -
asp.net 数据库存储过程使用 c#
存储过程和执行普通sql语句很类似,也是可以用SqlCommand及其他多种方式来实现,这里说SqlCommand的方式,和执行sql方式不同的是设定CmdObj.CommandType = CommandType.StoredProcedure;告诉编译器是执行的存储过程.怎么输入输出?输入和输出都是使用参数方式,用CmdObj.Parameters.Add("@chapter原创 2007-07-28 10:35:00 · 1399 阅读 · 3 评论 -
C# 数据库sql中用参数的方法来执行UPDATE命令,实现更新dataTime类型
执行sql语句时,有时候类型转换很麻烦,用参数方式能解决,UPDATE命令一样用参数下面是用参和不用参混合使用,updateTime是用参数方式更新.string SqlCmd = "UPDATE BookIndex SET chapterTotal = " + chapterID.ToString() + ",updateTime = @updateTime" //使用原创 2006-11-16 23:29:00 · 5626 阅读 · 0 评论 -
关于in 和 inner join 语句的效率?
假设B表是一个临时表,里面只有一个字段id,它是A表id的一个子集。不过B表可能很大,里面可能有多达1000条记录,在这种情况下,以下语句哪个效率会更高些? SELECT A.* FROM A INNER JOIN B ON A.ID=B.ID SELECT A.* FROM A WHERE A.ID IN原创 2006-10-30 11:30:00 · 8500 阅读 · 0 评论 -
在MSSQL中添加记录后获取当前记录ID的方法
在MSSQL中添加记录后获取当前记录ID的方法: 程序代码string sqlCmd = "SET NOCOUNT ON;Insert into userdb(username,userpwd) values("&username&","&userpwd&");Select @@IDENTITY";CmdObj = new SqlCommand(SqlCmd,myConne原创 2006-10-27 09:13:00 · 3437 阅读 · 0 评论 -
MS SQLSERVER中快速获取表的记录总数
在数据库应用的设计中,我们往往会需要获取某些表的记录总数,用于判断表的记录总数是否过大,是否需要备份数据等。我们通常的做法是:select count(*) as c from tableA 。然而对于记录数巨大的表,上述做法将会非常耗时。 在DELL 4400 服务器上做试验,MS Sqlserver 2000 数据库对于100万记录的简单数据表执行上述语句,时间在1分钟以上。如果在表的某个字原创 2006-10-25 02:27:00 · 1042 阅读 · 0 评论 -
海量数据库的查询优化及分页算法方案
海量数据库的查询优化及分页算法方案 随着“金盾工程”建设的逐步深入和公安信息化的高速发展,公安计算机应用系统被广泛应用在各警种、各部门。与此同时,应用系统体系的核心、系统数据的存放地――数据库也随着实际应用而急剧膨胀,一些大规模的系统,如人口系统的数据甚至超过了1000万条,可谓海量。那么,如何实现快速地从这些超大容量的数据库中提取数据(查询)、分析、统计以及提取数据后进行数据分页已成为各地转载 2006-10-25 01:48:00 · 1112 阅读 · 1 评论 -
存储过程中,goto语句和if else语句注意,标签的位置问题导致条件语句失效
存储过程中,goto语句和if else语句注意,标签的位置问题导致条件语句失效如if(@a < 2) goto tag1if(@b > 3) begin...... endelse--tag1: ---标签放这里,则else内的语句始终会执行,无论@b是否小于3 begintag1: --标签正确放这里...原创 2007-08-05 11:07:00 · 2635 阅读 · 1 评论 -
SQL Server 2000 Service Pack 4文档
Microsoft SQL Server 2000 Service Pack 4Database Components2005 年 3 月 21 日© 版权所有 Microsoft Corporation,2004。保留所有权利。 SQL Server 文档小组不能解答技术支持问题,但是欢迎您就本自述文档提出建议和意见。通过下面的链接可以快速并直接发送电子邮件反馈。在发送反馈时请使用英文书写。转载 2008-03-13 11:10:00 · 3625 阅读 · 1 评论 -
创建sql数据库复制的发布、订阅的问题处理
操作使用的一些技巧(事务复制类型):1.如何修改一个已经发布的表的属性?将发布所有订阅删除,(发布不用删除),就可以在发布属性的项目中取消表,然后就可以修改该表了,修改后,再将表加入发布内就可以了.2.常用的操作界面:(1)一般都在监视器--发布项目,可以看到快照 分发和订阅的即时信息.(2)另外一个操作地方是发布的属性,(在属性--状态里可以启动代理)(3)还有一个是工具--复制--原创 2008-03-12 19:13:00 · 8442 阅读 · 2 评论 -
几个在MS SQL Server处理IP的函数/存储过程
几个在MS SQL Server处理IP的函数/存储过程以下函数都未验证IP字符串的合法性,需要的话可以通过VBScript的接口在Sql Server中实现。当然,最好的办法是把这些程序写到网页脚本中去(比如ASP、PHP等),如果还想节省服务器资源的话,应该用javascript或其他客户端脚本里边去。下面这些东西仅仅是好玩而已,如果想提高效率,还可以把下面除法换成位运算来执行。1转载 2007-12-02 16:54:00 · 972 阅读 · 0 评论 -
镜像网站页面文件同步和数据库同步
现在的网站随着访问量的增加,单一服务器无法承担巨大的访问量,有没有什么方便快捷的方式解决这个问题呢,答案是”有”! 比如建立服务器群,进行均衡负载. 但是如果要解决像电信网通这样的互访问题(中国网民的悲哀..),这个解决办法就无能为力了! 要解决这个问题最方便快捷的方式就是建立镜像网站!由访问者自己选择适合自己网络的速度最快的网站!这样即可以解决线路问题,又可以解决访问量问题! 2.网站同步的转载 2008-02-23 11:35:00 · 1546 阅读 · 0 评论