sql server
文章平均质量分 65
lb517290079
这个作者很懒,什么都没留下…
展开
-
sql server 2005常用的系统存贮过程
sp_databases --列出服务器上的所有数据库 sp_server_info --列出服务器信息,如字符集,版本和排列顺序 sp_stored_procedures--列出当前环境中的所有存储过程 sp_tables --列出当前环境中所有可以查询的对象 sp_start_job --立即启动自动化任务 sp_stop_job --停止正在执行的自动化任务 sp_p...原创 2011-01-06 00:01:43 · 107 阅读 · 0 评论 -
Sql server 国际化的支持,查询乱码
如果 Sql server 2005 的数据库字符集是非中文,例如是SQL_Latin1_General_CP1_CI_AS什么的。 当某个表的自动又有nvarchar时候,那么你查询,修改,或者是视图,存储过程中,都会出现乱码或者查询不出结果。 例如: SELECT StatusName = case xxInstance.[Status] ...原创 2011-01-11 00:20:14 · 455 阅读 · 0 评论 -
sql server 2005的一些动态函数
所有对象:SELECT name, object_id, principal_id, schema_id, parent_object_id, type, type_desc, create_date, modify_date, is_ms_shipped, is_published, is_schema_publishedFROM sys.all_objectsORDER BY na...原创 2011-01-11 00:23:29 · 96 阅读 · 0 评论 -
索引的魅力
今天有空,来测试一下mssql2005的一条查询语句在聚集索、索引、无索引等情况下的查询速度及IO情况,表结构如下,共222994条记录。CREATE TABLE [dbo].[TaoBaoTrade_0001]( [nick] [nvarchar](100) NOT NULL, [iid] [char](32) NOT NULL, [created] [date...原创 2011-01-11 00:32:47 · 77 阅读 · 0 评论 -
MSSQL聚集索引與非技術索引設計指南
(一)聚集索引设计指南 聚集索引基于数据行的键值在表内排序和存储这些数据行.每个表只能有一个聚集索引,因为数据行本身只能按一个顺序存储.定义聚集索引来实现下列功能:1:可用于经常使用的查询提供高度唯一性.注意: 创建 PRIMARY KEY 约束时,将在列上自动创建唯一索引.默认情况下,此索引是聚集索引,但是在创建约束时,可以指定创建非聚集索引.2:可用于范围查询如果未...原创 2011-01-11 00:41:20 · 121 阅读 · 0 评论 -
怎样才能充分利用SQL索引
怎样才能充分利用SQL索引 背景:目前WEB的普及太快,很多网站都会因为大流量的数据而发生服务器习惯性死机,一个查询语句只能适用于一定的网络环境.没有优化的查询当遇上大数据量时就不适用了. 本文主旨:讨论什么情况下能利用上索引. 索引:创建索引可以根据查询业务的不同分为两种:单一列的索引,联合索引. 顾名思义,单一列索引就是指在表的某一列上创建索引,联合索引是在多...原创 2011-01-11 00:43:01 · 77 阅读 · 0 评论 -
MSSQL 生成編號 --整理帖
-->Title:得到普通流水编号的函数-->Author:wufeng4552-->Date :2009-10-20 if object_id('tb','U')is not null drop table tbif exists(select * from dbo.sysobjects where id=object_id(N'[dbo].[f_GetBH]')and xty...原创 2011-01-11 00:48:09 · 74 阅读 · 0 评论 -
sql server 查看执行效率低下的语句
就是在测量功能时,先以下命令清除sql server的缓存dbcc freeProcCache在点击某个按钮,执行完后,再执行下面语句,就可以知道系统运行什么Sql和多少次了,其主要慢语句是那些了; SELECT creation_time N'语句编译时间' ,last_execution_time N'上次执行时间' ,total...原创 2011-01-11 00:54:53 · 90 阅读 · 0 评论 -
DBCC命令
今天把DBCC命令都一一使用了一下,做了笔记,防止忘记. 在调用命令时使用了一些参数,其中'taobaoitem_0003'是表名,'ix_taobaoitem_0003'是索引,'taobao'是数据库名称,'taobao3'是数据库文件.Transact-SQL 编程语言提供 DBCC 语句作为 SQL Server 的数据库控制台命令。数据库控制台命令语句可分为以下类别。...原创 2011-01-11 01:06:36 · 106 阅读 · 0 评论 -
用CROSS APPLY解开了困扰我一年多的一个问题
假设有一个表叫SongsTop,是歌曲下载情况的记录。 Star,SongName,Hot周杰伦,乔克叔叔,2861周杰伦,稻香,4842周杰伦,兰亭序,2656周杰伦,流浪诗人,1568S.H.E,酸甜,1479S.H.E,月光手札,1138S.H.E,店小二,715S.H.E,熬夜DJ,538S.H.E,天亮了,931张信哲,天使的眼泪,3189...原创 2011-01-11 01:16:00 · 249 阅读 · 0 评论 -
SQLServer和Oracle的常用函数对比
1.绝对值 S:selectabs(-1) value O:selectabs(-1) valuefromdual 2.取整(大) S:selectceiling(-1.001) valueselectceil(-1.001) valuefromdual 3.取整(小) S:selectfloor(-1.001) value O:selectfloor(-1.001) valuefr...原创 2011-01-12 00:09:53 · 82 阅读 · 0 评论 -
安装SQL SERVER 2008出现 RebootRequiredCheck Fail 问题解决
在安装Sql Server 2008 Enterprise时出现:RebootRequiredCheck Fail,从新启动了操作系统,但还是出现这个问题,解决方式是修改注册表HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\PendingFileRenameOperations的值,把PendingFileRe...2011-01-26 15:09:00 · 610 阅读 · 0 评论 -
SQL 2005 Reporting Service 出现:“提供程序加载失败”(Provider Load failure)的解决方法 ...
错误描述:操作系统:windows server 2003 Enterprise Edition在安装sql 2005过程中未报任何错误成功安装完成。但是用SQL Server Management Studio 连接reporting service 报错:提供程序加载失败(图1 所示)。同时Reporting Services 配置工具 启动时也报相同错误(图2所示)。且从sql的错误日志中未...原创 2011-02-23 00:28:23 · 1646 阅读 · 0 评论 -
SQL SERVER 查看当前数据库系统设置概览
sql server 数据库查看当系统概览可以在“查询”视图中运行以下查询: use mastergoexec sp_configurego 此命令只能查看基本的设置,假如想看高级设置,则可以修改show advanced options为1,show advanced options参数默认为0 use mastergoexec sp_configur...2011-02-24 10:43:28 · 325 阅读 · 0 评论 -
SQL Server 2005中使用DDL触发器监控数据库变化
添加,删除或修改数据库的对象,一旦误操作,可能会导致大麻烦,需要一个数据库管理员或开发人员对相关可能受影响的实体进行代码的重写。 为了在数据库结构发生变动而出现问题时,能够跟踪问题,定位问题的根源,我们可以利用DDL触发器来记录类似“用户建立表”这种变化的操作,这样可以大大减轻跟踪和定位数据库模式的变化的繁琐程度。 1、DDL触发器介绍 DDL 触发器是一种特殊的触发器,它在响...原创 2011-01-11 00:12:15 · 132 阅读 · 0 评论 -
SQL Server 2005系列教学_ 触发器
触发器:本质是一个存储过程 常见的触发器类型:插入触发器 insert删除触发器 delete更新触发器 update插入触发器:语法:create trigger 名称on 表名 for insertasbegin 代码endselect * from usersinsert into users values ('张三','男',20,40)...原创 2011-01-11 00:07:33 · 99 阅读 · 0 评论 -
SQL时间段查询
-- 后一天select DATEADD(day, 1, getdate())--前一天select DATEADD(day, -1, getdate())--本周星期一SELECT DATEADD(dd,(case @@datefirst when 7 then 2 else 2-@@datefirst end)-datepart(dw,getdate()),getdate())--本周星期日...原创 2011-01-06 01:19:08 · 101 阅读 · 0 评论 -
SQLServer数据库日志清理 清除sqlserver2005日志
有时候当系统运行时间比较长的时候,我们把备份的数据库还原的时候发现,数据库中数据文件和日志文件变的好大,特别是日志文件。现在给大家介绍如何清理SQLServer数据库日志;有两种方法如下:方法一:手动清除sqlserver2005日志1.右键在清除日志的数据库,如“TestDB”,点击[新建查询(Q)]2.输入以下SQL语句,其中“TestDB”是数据库名称 DUMP TRANSA...原创 2011-01-06 01:20:25 · 186 阅读 · 0 评论 -
计算机改名对SQLSERVER2005的影响和解决方法
据说会有数据库无法复制 数据库维护计划就不能运行 无法连接本地reporting services 等等的问题 当然最好是服务器不能随便更改名称 服务器上的每一个操作都要规划 谨慎操作 解决方法: 从sys.sysservers 查看列 svrname 可以发现不是新的计算机名,问题就出在此处。先用 sp_dropserver 删除服务器...原创 2011-01-06 01:22:25 · 167 阅读 · 0 评论 -
SQL Server2005 表分区三步曲
前言SQL Server 2005开始支持表分区,这种技术允许所有的表分区都保存在同一台服务器上。每一个表分区都和在某个文件组(filegroup)中的单个文件关联。同样的一个文件/文件组可以容纳多个分区表。在这种设计架构下,数据库引擎能够判定查询过程中应该访问哪个分区,而不用扫描整个表。如果查询需要的数据行分散在多个分区中,SQL Server使用多个处理器对多个分区进行并行查询。你可以为在...原创 2011-01-06 01:30:59 · 87 阅读 · 0 评论 -
关于SQL Server 2005 服务器的内存设置
SQL Server会把用过的数据放入cache,以便加速数据的访问。如果没有其它进程竞争,那么SQL Server会使用几乎全部的内存,直到有其它进程需要内存,才会释放内存。在并发度不大的情况下,不用去设置SQL Server的内存是没什么问题的。但是在高并发度/大数据量的情况,这样可能会导致大量的页交换。推荐的做法是,设置SQL Server使用75%的内存,比如64G内存的服务器,我们一般设...原创 2011-01-06 01:44:04 · 252 阅读 · 0 评论 -
SQL Server 2005中的文件和文件组
1、文件和文件组的含义与关系 每个数据库有一个主数据文件.和若干个从文件。文件是数据库的物理体现。文件组可以包括分布在多个逻辑分区的文件,实现负载平衡。文件组允许对文件进行分组,以便于管理和数据的分配/放置。例如,可以分别在三个硬盘驱动器上创建三个文件(Data1.ndf、Data2.ndf 和 Data3.ndf),并将这三个文件指派到文件组 fgroup1 中。然后,可以明确地在文件组 f...原创 2011-01-06 01:46:24 · 119 阅读 · 0 评论 -
SQL2005中返回修改后的数据
今天在公司看到同事写了个SQL2005的新特性的文章,觉得很实用,在这里和大家分享下。原著作权不属于我。 这种技术主要是用到了inserted和deleted虚拟表,这两张表相信大家都很熟悉。以前我们主要是在触发器中使用。我们先来复习下这两个表: Inserted和Deleted这两个表是逻辑表,并且这两个表是由系统管理的,存储在内存中,不是存储在数据库中,因此,不允许用户直接对...原创 2011-01-06 01:49:19 · 97 阅读 · 0 评论 -
如何避免安装SQL 2005的COM+错误
在安装sql 2005的时候很有可能报COM+的警告,让人看了总是不太舒服。一下是解决问题的方法。 1、是否已经安装IIS,没有就装上吧 2、MSDTC服务是否已经启动,如果没有启动就先启动,否则安装过程你会碰到传说中的COM+错误。在运行窗口输入services.msc命令打开服务窗口,找到"Distributed Transaction Coordinator"服务,然后启动它,如果在这里启动...原创 2011-01-06 01:52:27 · 74 阅读 · 0 评论 -
SQL SERVER 2005中的同步复制技术
一、准备工作: 1.建立一个 WINDOWS 用户,设置为管理员权限,并设置密码,作为发布快照文件的有效访问用户。 2.在SQL SERVER下实现发布服务器和订阅服务器的通信正常(即可以互访)。打开1433端口,在防火墙中设特例 3.在发布服务器上建立一个共享目录,作为发布快照文件的存放目录。例如:在D盘根目录下建文件夹名为SqlCopy 4.设置SQL 代...原创 2011-01-06 01:54:10 · 74 阅读 · 0 评论 -
SQL2005误删除数据的恢复方法
由于同事写错作业脚本,导致昨天晚上系统当中一张重要表的大概2万数据被删除。早上发现时的情况是,半夜(误操作之后)备份过数据,昨天的备份已经被新的备份取代而且没有日志备份,貌似这个策略不太合理。这个结果就是,没有误操作之前的全库备份,无法通过RESTORE LOG 来恢复。 但是备份后没有清除日志,这个给恢复留了最后一丝希望。最后只能寄希望于Log Explorer。据我所知的是Log Ex...原创 2011-01-06 01:56:35 · 323 阅读 · 0 评论 -
SQL Server中临时表与表变量的区别
我们在数据库中使用表的时候,经常会遇到两种使用表的方法,分别就是使用临时表及表变量。在实际使用的时候,我们如何灵活的在存储过程中运用它们,虽然它们实现的功能基本上是一样的,可如何在一个存储过程中有时候去使用临时表而不使用表变量,有时候去使用表变量而不使用临时表呢? 临时表 临时表与永久表相似,只是它的创建是在Tempdb中,它只有在一个数据库连接结束后或者由SQL命令DROP掉,才会...原创 2011-01-08 22:02:45 · 94 阅读 · 0 评论 -
谈SQL Server标识列
一、标识列的定义以及特点 SQL Server中的标识列又称标识符列,习惯上又叫自增列。 该种列具有以下三种特点: 1、列的数据类型为不带小数的数值类型 2、在进行插入(Insert)操作时,该列的值是由系统按一定规律生成,不允许空值 3、列值不重复,具有标识表中每一行的作用,每个表只能有一个标识列。 由于以上特点,使得标识列在数据库的设计中得到广泛的使用。 二、标识列的组成 创建一个标识列,通常...原创 2011-01-08 23:30:05 · 162 阅读 · 0 评论 -
SQLServer2005新的高效分页方法
Select * FROM ( select ROW_NUMBER()Over(order by cf_id desc) as rowId,* from T_Test) as mytablewhere rowId between 21 and 40每页20条,第2页ROW_NUMBER是SqlServer2005中的新特性以下是利用本方法和传统利用Set RowCount方法存储过程的效率比较结...原创 2011-01-10 23:58:11 · 134 阅读 · 0 评论 -
SQL Server复制的缺陷
SQL Server复制是最常见的数据库操作之一,SQL Server复制分为三种,下面就为您分别介绍这三种SQL Server复制,并介绍SQL Server复制的缺陷,供您参考。SQL Server复制分为三种:1. 快照复制A每隔一段时间将B中的相应表中的数据全部删除,然后将自己相应表中的全部插到B中。此种方式显然不适合我们的应用,不予考虑。2. 事务复制对A中的每一个满...原创 2011-02-25 13:12:06 · 173 阅读 · 0 评论