
SQL
文章平均质量分 68
jxufewbt
这个作者很懒,什么都没留下…
展开
-
使用Sqlserver事务发布实现数据同步
事务的功能在sqlserver中由来已久,因为最近在做一个数据同步方案,所以有机会再次研究一下它以及快照等,发现还是有很多不错的功能和改进的。这里以sqlserver2008的事务发布功能为例,对发布订阅的方式简要介绍一下操作流程,一方面做个总结备份,一方面与大家进行一下分享和交流。费话就不多说了,进入一下今天的正题:) 这里要说明一下环境:首先我在本地局域网内有两台安装有sqlser转载 2012-07-06 16:30:05 · 1170 阅读 · 0 评论 -
整理的几个常用的数据库维护的脚本
/********************************************************************************* * FielName : backup.sql原创 2007-10-02 15:34:00 · 2107 阅读 · 1 评论 -
迅速解决 SQL Server 日志满问题
本文先提供一种复杂的方法压缩日志及数据库文件。 1.清空日志:DUMP TRANSACTION 库名 WITH NO_LOG。 2.截断事务日志:BACKUP LOG 数据库名 WITH NO_LOG。 3.收缩数据库文件(如果不压缩,数据库的文件不会减小: 企业管理器->右键你要压缩的数据库->所有任务->收缩数据库->收缩文件->选择日志文件->在收缩方式里选择收缩至XXM原创 2007-06-01 12:28:00 · 880 阅读 · 0 评论 -
MS SQL数据库备份和恢复存储过程(加强版本)
create proc pr_backup_db@flag varchar(20) out,@backup_db_name varchar(128),@filename varchar(1000) --路径+文件名字asdeclare @sql nvarchar(4000),@par nvarchar(1000)if not exists( select * from master..sysda原创 2007-06-01 12:11:00 · 728 阅读 · 0 评论 -
SQL server 索引的设计
尽量避免表扫描 检查你的查询语句的where子句,因为这是优化器重要关注的地方。包含在where里面的每一列(column)都是可能的侯选索引,为能达到最优的性能,考虑在下面给出的例子:对于在where子句中给出了column1这个列。 下面的两个条件可以提高索引的优化查询性能! 第一:在表中的column1列上有一个单索引 第二:在表中有多索引,但是col尽量避免表扫描 检查你的查询语句原创 2007-06-01 12:02:00 · 760 阅读 · 0 评论 -
修改sqlserver数据库所有者
批量修改:打开企业管理器,点local右键——属性——服务器设置,在服务器行为那一栏里有个允许对系统目录直接进行修改的选项,把他勾起来,这样才能修改系统表。点local右键——编辑sqlserver注册属性,把显示系统数据库和系统对象勾起来,这样才能看到系统表。在要修改的数据库里找到sysusers,在表里找到需要修改用户的id,具体的语句如下:select * from sysusers whe原创 2007-06-02 17:12:00 · 1685 阅读 · 0 评论 -
怎么清除sql server日志
方法1:第一步:backup log database_name with no_log 或者 backup log database_name with truncate_only --no_log和truncate_only是在这里是同义的,随便执行哪一句都可以第二步:1.收缩特定数据库的所有数据和日志文件,执行 dbcc shrinkdatabase (database_name,[,t原创 2007-06-01 12:17:00 · 740 阅读 · 0 评论 -
SQL SERVER与C#中数据类型的对应关系
/// /// 数据库中与C#中的数据类型对照 /// /// /// private string ChangeToCSharpType(string type) { string reval=string.Empty; switch(type.ToLower()) { case "int": reval= "Int32"; break;原创 2007-05-31 16:56:00 · 652 阅读 · 0 评论 -
SQL Server全文索引
在一个产品介绍网站中查询产品时,由于产品的介绍性文字可能会很长,如果使用对产品介绍字段使用like进行模糊查询,性能肯定会是问题。那么如何解决这个问题呢?第一个想法就是使用全文索引。那么全文索引是什么、应该如何应用、在应用的过程中又应该注意哪些事情呢?这个POST作为学习全文检索的笔记。 1、是什么 [摘录自SQL Server2000联机从书] 全文索引为在字符串数据中进行复原创 2007-05-29 09:38:00 · 991 阅读 · 0 评论 -
sql server 2000中循环建立1024个表
declare @i intdeclare @j intdeclare @sql varchar(4000)declare @sqlsource_delete varchar(4000)declare @sqlsource_create varchar(4000)declare @sn varchar(10)set @sql = set @i=1set @sqlsource_delet原创 2007-05-30 17:52:00 · 955 阅读 · 0 评论 -
C#中如何执行sql脚本?
在C#中执行SQL脚本,可以考虑使用osql工具。Example : #region 调用Osql.exe执行建库脚本/// /// 调用Osql.exe执行建库脚本/// /// 数据库访问用户名/// 数据库访问密码private void CreateDataBase (){Process p = new Process(); p.StartInfo.FileName = "cmd.原创 2007-05-30 14:23:00 · 1568 阅读 · 0 评论 -
如何在SQL Server存储过程中执行DTS包
数据转换服务(DTS)在数据库管理和开发的多种领域都有会涉及DTS: 数据仓库-将数据从原始的处理系统和表格中提取出来以供报表使用 建立OLAP 将大量数据从文本文件或其它非数据库格式的文件中拷贝到数据库 生成Microsoft Office文档报表 使用 Distributed Transaction Coordinator原创 2007-05-30 14:19:00 · 989 阅读 · 0 评论 -
MS SQL SERVER 海量数据的查询优化及分页算法
探讨如何在有着1000万条数据的MS SQL SERVER数据库中实现快速的数据提取和数据分页。以下代码说明了我们实例中数据库的“红头文件”一表的部分数据结构:CREATE TABLE [dbo].[TGongwen] ( --TGongwen是红头文件表名 [Gid] [int] IDENTITY (1, 1) NOT NULL ,--本表的id号,也是主键 [title] [va原创 2007-05-30 09:28:00 · 888 阅读 · 0 评论 -
数据库性能优化
Ø 前言性能调整的目标是通过最大限度地降低网络通信、减少磁盘 I/O 和 CPU 时间,使所有用户处理的吞吐量都达到最大,从而为每一次查询提供可接受的响应时间。这一目标的实现,必须建立在对应用程序的要求进行彻底分析、及对数据逻辑和物理结构有深刻的理解基础之上,并需要对数据库的竞争使用而造成的性能消长进行评估和协调。 Ø 应用系统设计在应用系统的设计中,要着重考虑以下原创 2007-05-28 13:51:00 · 1004 阅读 · 0 评论 -
MS SQL Server查询优化方法
●查询速度慢的原因很多,常见如下几种:1、没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷)2、I/O吞吐量小,形成了瓶颈效应。3、没有创建计算列导致查询不优化。4、内存不足5、网络速度慢6、查询出的数据量过大(可以采用多次查询,其他的方法降低数据量)7、锁或者死锁(这也是查询慢最常见的问题,是程序设计的缺陷)sp_lock,sp_who,活动的用户查看,原因是读写竞争资源。原创 2007-05-25 09:39:00 · 822 阅读 · 0 评论 -
我的一段执行 xp_cmdshell回显读取的经历!(图)
最近在写 xp_cmdshell 执行命令,怎样读取回显的事!我在"企业管理器 SQL Server Enterprise Manager "执行一下命令EXEC master.dbo.xp_cmdshell dir c:/screen.width-300)this.width=screen.width-300" border="0" src="http://anqn.com/pic/31转载 2008-05-06 11:01:00 · 3433 阅读 · 0 评论 -
发现数据库中有D99_Tmp表的应对方法
using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;//添加的命名空间引用using System.Net;using System.N原创 2008-05-06 11:02:00 · 1312 阅读 · 0 评论 -
sqlserver2008数据库优化常用脚本
--查询某个数据库的连接数select count(*) from Master.dbo.SysProcesses where dbid=db_id()--前10名其他等待类型 SELECT TOP 10 * from sys.dm_os_wait_stats ORDER BY wait_time_ms DESC SELECT *FROM sys.dm_os_原创 2012-01-05 11:46:49 · 1777 阅读 · 0 评论 -
几个很有用的SQL语句
<br />1、获取某个数据库所有表的数据行数:<br />Select O.Name,I.RowCnt<br /> From SysObjects O Join SysIndexes I On O.ID=I.ID<br /> Where O.Type='U' and I.IndID<=1 and O.Name<>'dtproperties'<br /> order by I.RowCnt desc<br /> <br /><br />2、设置数据库最大内存使用值:<br />SP_Configure 's原创 2010-11-09 17:26:00 · 832 阅读 · 0 评论 -
查询SQL Server 2008运行效率情况(在master数据库下执行)
<br />SELECT TOP 200 query_stats.query_hash AS "Query Hash",<br /> Sum(Query_Stats.total_logical_Reads) as Total_Logical_Reads,<br /> Sum(Query_Stats.total_physical_Reads) as Total_physical_Reads,<br /> SUM(query_stats.total_worker_time) / SUM(que原创 2010-11-09 15:24:00 · 2050 阅读 · 0 评论 -
SQL简繁体转换
SQL简体繁体转换函数代码: --生成码表if exists (select * from dbo.sysobjects where id = object_id(N'[codetable]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)drop table [codetable]GOdeclare @j varchar(8000),@f varchar(8000)select @j=' 啊阿埃挨哎唉哀皑癌蔼矮艾碍爱隘鞍氨安俺按暗岸胺案肮昂盎凹敖熬原创 2010-12-27 16:08:00 · 40163 阅读 · 0 评论 -
SQL Server 索引结构及其使用(一)
<br /><br />一、深入浅出理解索引结构 <br /><br /> 实际上,您可以把索引理解为一种特殊的目录。微软的SQL SERVER提供了两种索引:聚集索引(clustered index,也称聚类索引、簇集索引)和非聚集索引(nonclustered index,也称非聚类索引、非簇集索引)。下面,我们举例来说明一下聚集索引和非聚集索引的区别: <br /> 其实,我们的汉语字典的正文本身就是一个聚集索引。比如,我们要查“安”字,就会很自然地翻开字典的前几页,因为“安”的拼音是“an”,而转载 2010-12-21 19:54:00 · 736 阅读 · 0 评论 -
SQL Server 索引结构及其使用(四)
<br />聚集索引的重要性和如何选择聚集索引 <br /><br /> 在上一节的标题中,笔者写的是:实现小数据量和海量数据的通用分页显示存储过程。这是因为在将本存储过程应用于“办公自动化”系统的实践中时,笔者发现这第三种存储过程在小数据量的情况下,有如下现象: <br /><br />1、分页速度一般维持在1秒和3秒之间。 <br /><br />2、在查询最后一页时,速度一般为5秒至8秒,哪怕分页总数只有3页或30万页。 <br /><br /> 虽然在超大容量情况下,这个分页的实现过程是很快的,转载 2010-12-21 19:57:00 · 849 阅读 · 0 评论 -
SQL Server 索引结构及其使用(三)
<br /><br />实现小数据量和海量数据的通用分页显示存储过程 <br /><br /> 建立一个 Web 应用,分页浏览功能必不可少。这个问题是数据库处理中十分常见的问题。经典的数据分页方法是:ADO 纪录集分页法,也就是利用ADO自带的分页功能(利用游标)来实现分页。但这种分页方法仅适用于较小数据量的情形,因为游标本身有缺点:游标是存放在内存中,很费内存。游标一建立,就将相关的记录锁住,直到取消游标。游标提供了对特定集合中逐行扫描的手段,一般使用游标来逐行遍历数据,根据取出数据条件的不同进行不同转载 2010-12-21 19:56:00 · 610 阅读 · 0 评论 -
SQL Server 索引结构及其使用(二)
<br /><br />改善SQL语句 <br /><br /> 很多人不知道SQL语句在SQL SERVER中是如何执行的,他们担心自己所写的SQL语句会被SQL SERVER误解。比如:select * from table1 where name=''zhangsan'' and tID > 10000<br />和执行:select * from table1 where tID > 10000 and name=''zhangsan''<br /> 一些人不知道以上两条语句的执行效率是否一样,转载 2010-12-21 19:56:00 · 699 阅读 · 1 评论 -
DBCC DROPCLEANBUFFERS (Transact-SQL)
DBCC DROPCLEANBUFFERS (Transact-SQL)从缓冲池中删除所有清除缓冲区。 Transact-SQL 语法约定 语法 DBCC DROPCLEANBUFFERS [ WITH NO_INFOMSGS ] 参数 WITH NO_INFOMSGS 禁止显示所有信息性消息。原创 2010-02-03 16:15:00 · 2362 阅读 · 0 评论 -
与图片的二进制数据库存储和显示
1.将图片以二进制存入数据库2.读取二进制图片在页面显示3.设置Image控件显示从数据库中读出的二进制图片4.GridView中ImageField以URL方式显示图片5.GridView显示读出的二进制图片====================1.将图片以二进制存入数据库C#--------------------------//保存图片到数据库protected void But原创 2009-11-28 10:38:00 · 3693 阅读 · 0 评论 -
ASP.NET备份还原数据库
核心技术:using System.Data.SqlClient;using System.IO;string SqlStr1 = "Server=(local);DataBase=master;Uid=sa;Pwd=";string SqlStr2 = "Exec sp_helpdb";string SqlStr1 = "Server=(local);database=" + this.Dro原创 2009-08-12 22:04:00 · 808 阅读 · 0 评论 -
sql2000 因为选定的用户拥有对象,所以无法除去该用户
把sql数据库从一个服务器移到另一个服务器上,或者把数据库备份了以后,重新卸载了sqlserver2000又重新安装了,之后还原,都可能会遇到这个有关用户权限的提示“sql2000 因为选定的用户拥有对象,所以无法除去该用户”,此时,删除这个用户又删除不掉,在安全里面重新添加吧,又会提示此用户存在,这该怎么办呢?由于mssql200数据库的错误,我把一个原来的数据库还原到现在的sql上,此原创 2009-08-08 19:49:00 · 1136 阅读 · 0 评论 -
关于 FROM a,b 和 a LEFT JOIN b 的区别
简单的讲就是SELECT * FROM a,b WHERE a.id=b.id和 SELECT * FROM a LEFT JOIN b ON a.id=b.id 通俗的解释:例表a aid adate 1 a1 2 a2 3 a3 表b bid bdate 1 b1 2 b2 4 b4 两个表a,b相连接,要取出id相同的字段 select * from a ,b where a.aid原创 2009-08-03 11:58:00 · 1573 阅读 · 0 评论 -
关于MMC不能打开文件C:/Program Files/Microsoft SQL Server/80/Tools/Binn/SQL Server Enterprise Manager.MSC可能是由于文件不存在,不是一个MMC控制台,或者用后来的MMC版
打开运行对话框输入:mmc 控制台--添加/删除管理单元--添加--找到MicrosoftSQL企业管理器--添加--关闭--确定 回到控制台 再:控制台--选项--控制台模式选择"用户模式完全访问"--将下面的选择全部取消 然后再:控制台--另存为--存储为:C:/ProgramFiles/MicrosoftSQLServer/80/Tools原创 2008-09-28 09:57:00 · 1117 阅读 · 0 评论 -
sql server 2000中循环插入100万条数据
declare @i int --变义变量@i set @i = 1 --初始化@i为1 while @i begin ------------------ insert into manager (username,userpwd) values(kgdiwss,250) set原创 2007-05-28 14:40:00 · 1597 阅读 · 0 评论 -
不需xp_cmdshell支持在有注入漏洞的SQL服务器上运行CMD命令
利用扩展存储过程xp_cmdshell来运行操作系统的控制台命令。这种方法也非常的简单,只需使用下面的SQL语句:EXEC master.dbo.xp_cmdshell dir c:/但是越来越多的数据库管理员已经意识到这个扩展存储过程的潜在危险,他们可能会将该存储过程的动态链接库xplog70.dll文件删除或改了名,这时侯许多人也许会放弃,因为我们无法运行任何的cmd命令,很难查看对方计算原创 2007-03-28 13:54:00 · 810 阅读 · 0 评论 -
面试必须要知道的SQL语法,语句
前言:书里有的、书里没的,统统在此可以一浏。asc 按升序排列desc 按降序排列下列语句部分是Mssql语句,不可以在access中使用。SQL分类: DDL—数据定义语言(Create,Alter,Drop,DECLARE) DML—数据操纵语言(Select,Delete,Update,Insert) DCL—数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK)首先,原创 2007-06-22 13:07:00 · 882 阅读 · 0 评论 -
SQL Server数据库六种数据移动方法
1. 通过工具DTS的设计器进行导入或导出DTS的设计器功能强大,支持多任务,也是可视化界面,容易操作,但知道的人一般不多,如果只是进行SQL Server数据库中部分表的移动,用这种方法最好,当然,也可以进行全部表的移动。在SQL Server Enterprise Manager中,展开服务器左边的+,选择数据库,右击,选择All tasks/Import Data...(或All tasks原创 2007-03-28 13:56:00 · 1336 阅读 · 0 评论 -
SQLserver安全设置攻略
日前SQL INJECTION的攻击测试愈演愈烈,很多大型的网站和论坛都相继被注入。这些网站一般使用的多为SQLSERVER数据库,正因为如此,很多人开始怀疑SQL SERVER的安全性。其实SQL SERVER2000已经通过了美国政府的C2级安全认证-这是该行业所能拥有的最高认证级别,所以使用SQLSERVER还是相当的安全的。当然和 ORCAL、DB2等还是有差距,但是SQLSERVER的易转载 2007-03-28 13:55:00 · 883 阅读 · 0 评论 -
数据库设计中的14个技巧
1. 原始单据与实体之间的关系 可以是一对一、一对多、多对多的关系。在一般情况下,它们是一对一的关系:即一张原始单据对应且只对应一个实体。在特殊情况下,它们可能是一对多或多对一的关系,即一张原始单据对应多个实体,或多张原始单据对应一个实体。这里的实体可以理解为基本表。明确这种对应关系后,对我们设计录入界面大有好处。 〖例1〗:一份员工履历资料,在人力资源信息系统中,就对应三个原创 2007-06-22 13:45:00 · 821 阅读 · 0 评论 -
SQL语句导入导出大全,包括excel,access
/******* 导出到excel EXEC master..xp_cmdshell ’bcp SettleDB.dbo.shanghu out c:/temp1.xls -c -q -S"GNETDATA/GNETDATA" -U"sa" -P""’ /*********** 导入Excel SELECT * FROM OpenDataSource( ’Microsoft.Jet.OL原创 2006-08-22 17:59:00 · 5097 阅读 · 0 评论 -
SQL Server中查询时显示行号的方法
Select no=Identity(int,1,1),* Into TempTable From TableName Select * From TempTable Drop Table TempTable原创 2006-11-07 11:09:00 · 1902 阅读 · 0 评论 -
SQL宝典
SQL Server 数据库的高级操作(1) 批处理(2) 变量(3) 逻辑控制(4) 函数(5) 高级查询*/(1)批处理将多条SQL语句作为一个整体去编译,生成一个执行计划,然后,执行!理解批处理的关键在于"编译",对于由多条语句组成的一个批处理,如果在编译时,其中,有一条出现语法错误,将会导致编译失败!create table t(a int,b int)-- 注释-- 如果转载 2006-06-02 10:39:00 · 1396 阅读 · 0 评论