|>> 官方网站: http://www.xizhang.com 微博:http://weibo.com/chenxizhang

陈希章@中国

:: 心有多宽,路就有多宽 :: | :: http://tech.xizhang.com :: Microsoft .NET开发人员职业规划和学习路线图:: | ::架构师访谈

SQL Server

SQL Server 开发
SQL SERVER本地管理员和SA帐号都无法访问的问题和解决方案
摘要: 这几天在讲SQL Server 2008的课程,今天头一天,因为主办方准备的环境是用做好的同一个虚拟机,然后分发到很多台实验用的机器后,用sysprepare这种工具,修改了电脑名称。一早就遇到大家无...阅读全文

posted @ 2011-07-14 18:07 陈希章 阅读(1423) | 评论 (2) 编辑

常见SQL Server导入导出数据的几个工具
摘要: 在我们的日常工作中,与数据库打交道的机会越来越多。这一篇文章我整理一下常见的SQL Server导入导出数据的几个工具 1. 数据导入导出向导 这是一个可视化的工具,我放在首位,是由于它可以极大灵活地...阅读全文

posted @ 2011-06-09 16:33 陈希章 阅读(4729) | 评论 (11) 编辑

如何在SQL Server中使用正则表达式
摘要: 最近处理客户一个需求,是要在SQL Server中对某个列进行校验,使用正则表达式保证该列必须是一个邮件地址。 我们都知道,SQL Server的T-SQL中默认是没有这样的语法的。找了一些资料,下面...阅读全文

posted @ 2011-05-27 22:24 陈希章 阅读(4035) | 评论 (8) 编辑

SQL Server 2008 R2的StreamInsight 【文章转载】
摘要: 下面文章转载自:http://blogs.msdn.com/b/stbcblog/archive/2011/04/18/streaminsight-on-sql-server-2008-r2.aspx...阅读全文

posted @ 2011-05-21 21:23 陈希章 阅读(219) | 评论 (0) 编辑

細微之處看看mysql與sql server的一些差別
摘要: 以前不怎麼使用mysql,最近有些事情,需要用到php和mysql。目前使用的版本是5.5.1 發現mysql與sql server有很多不同。可能逐漸地會整理一些文檔出來給大家參考。 今天第一篇說說...阅读全文

posted @ 2011-04-24 14:42 陈希章 阅读(1833) | 评论 (8) 编辑

SQL Server 2008性能数据收集(Data Collector)的一些扩展话题
摘要: Data Collector是SQL Server 2008 新增的一个特性,位列管理员需知的top 10列表中。该功能在SQL Server 2008 R2中没有太大的变化 什么是Data Coll...阅读全文

posted @ 2011-03-16 17:32 陈希章 阅读(1434) | 评论 (3) 编辑

SQL Server : TRUSTWORTHY 数据库属性
摘要: TRUSTWORTHY 数据库属性用于指明 SQL Server 实例是否信任该数据库以及其中的内容。默认情况下,此设置为 OFF,但是可以使用 ALTER DATABASE 语句将其设置为 ON。例...阅读全文

posted @ 2010-01-26 20:40 陈希章 阅读(295) | 评论 (0) 编辑

SQL Server:如何查看某个存储过程的执行历史
摘要: 在SQL Server 2008中,提供了审核的功能,让这个以前看似很难的工作变得容易多了。下面是一个简单的范例 1. 创建一个服务器审核 选中它,启动它 2. 创建一个数据库审核规范 选中它,启用它...阅读全文

posted @ 2010-01-26 16:17 陈希章 阅读(264) | 评论 (0) 编辑

SQL Server:在Service Broker中使用Schema Collection验证消息
摘要: 这是我编写的一个手册中的一部分 --第一步:创建一个XML架构集合 --假设我们希望的XML数据格式如下(将它保存为OrderRequest.xml /* <?xml version="1.0"...阅读全文

posted @ 2010-01-26 14:47 陈希章 阅读(122) | 评论 (0) 编辑

SQL Server:如何在Service Broker发送消息验证失败后获取源消息
摘要: http://social.msdn.microsoft.com/Forums/en/sqlservicebroker/thread/a5003a06-c4ea-49c2-84ce-334eacc76...阅读全文

posted @ 2010-01-26 13:07 陈希章 阅读(170) | 评论 (0) 编辑

SQL Server : T-SQL中拆分字符串的一个自定义函数
摘要: 今天写到的一个函数create function [dbo].[split](@SourceSql varchar(8000),@StrSeprate varchar(10))returns @tem...阅读全文

posted @ 2010-01-25 23:19 陈希章 阅读(203) | 评论 (0) 编辑

SQL Server:Trace and Replay Objects: A New API for SQL Server Tracing and Replay
摘要: http://msdn.microsoft.com/en-us/library/ms345134(SQL.90).aspx Summary: This paper introduces Trace a...阅读全文

posted @ 2010-01-24 14:33 陈希章 阅读(119) | 评论 (0) 编辑

SQL Server:General guidelines to use to configure the MAXDOP option{转载}
摘要: http://support.microsoft.com/?scid=kb;en-us;329204&x=9&y=19 This article discusses the gener...阅读全文

posted @ 2010-01-24 13:47 陈希章 阅读(82) | 评论 (0) 编辑

图解SQL Server:聚集索引、唯一索引、主键
摘要: 简而言之,聚集索引可以是唯一索引,也可以不是。 但是主键必须是唯一的 同时,主键可以不是聚集索引阅读全文

posted @ 2010-01-14 20:45 陈希章 阅读(428) | 评论 (0) 编辑

SQL Server:在触发器中对远程链接服务器进行更新操作的问题
摘要: 与一般的触发器写法有些不同,必须添加 SET XACT_ABORT ON 并且确认两台服务器都安装并且启动了MSDTC服务 原因在于现在是分布式事务的场景。阅读全文

posted @ 2009-12-24 11:39 陈希章 阅读(201) | 评论 (0) 编辑

SQL Server : 使用SQL Express的User Instance特性

posted @ 2009-11-01 11:36 陈希章 阅读(350) | 评论 (0) 编辑

SQL Server 数据库文档生成工具开源项目【合作邀请】
摘要: 这是我之前编写的数据库文档生成工具的核心部分。我将它进行了一定的简化,希望对大家有用。 该项目的开源首页在 http://sqldocumentationx.codeplex.com/ 该工具支持的...阅读全文

posted @ 2009-08-09 18:57 陈希章 阅读(2989) | 评论 (22) 编辑

Microsoft SQL Remote Blob Storage (RBS) Samples
摘要: http://sqlrbs.codeplex.com/ RBS is a library API set that is designed to move storage of BLOB data f...阅读全文

posted @ 2009-07-30 21:59 陈希章 阅读(187) | 评论 (0) 编辑

SQL Server : 升级到SQL Server 2008,也许只需要一个理由
摘要: 这个理由就是:你如果经常需要在SQL Server中存取大量的二进制内容。 话说,我本来对此也没有太大的感性认识,全因为近日在写一个文件备份工具而起。我在下面这篇文章中大致提到了一些相关的背景 htt...阅读全文

posted @ 2009-07-29 15:34 陈希章 阅读(376) | 评论 (2) 编辑

.NET : 如何将大文件写入到数据库中
摘要: 最近利用空闲时间自己在写一个文件备份工具,因为我磁盘上的很多文件很重要,例如很多PPT和讲义。所以需要经常备份,而且因为这些文件很多,所以需要增量备份。 我尝试用过windows自带的ntbackup工具,但感觉不是很爽。它不支持压缩备份,而且界面也有点复杂。 为了响应伟大领袖的“自力更生,丰衣足食”的号召,咱决定自己写一个工具,专门备份到数据库。支持压缩,支持加密,支持增量。 阅读全文

posted @ 2009-07-28 09:55 陈希章 阅读(538) | 评论 (1) 编辑

SQL Server : 数据库快照及其查询
摘要: 近日再次讲到SQL Server 2005中的数据库快照功能。这里做一个总结 使用场景: 只读的报表查询(可以有多个版本) 分担源数据库压力 将数据静止在某个时间 对于人为失误问题的灾难恢复 主要...阅读全文

posted @ 2009-07-25 18:35 陈希章 阅读(176) | 评论 (0) 编辑

SQL Server : 如何让每次备份的目标文件文件名不一样
摘要: 问题: 在对SQL Server数据库进行备份的时候,我们可以指定一个文件名。假设我们需要每天备份,同时希望每天备份的文件名是不一样的,例如使用当前的日期作为文件名 我的回答: USE MASTER...阅读全文

posted @ 2009-07-15 10:22 陈希章 阅读(194) | 评论 (0) 编辑

SQL Server: 在SQL Server 2008中为一批对象添加审核
摘要: 今天被问到这样一个问题,SQL Server 2008的审核窗口中,好像每次只能设置针对一个对象(例如表,视图等),能不能对一批对象进行审核呢? 首先,稍微回顾一下审核功能 下面是我的回复: ====...阅读全文

posted @ 2009-07-14 19:23 陈希章 阅读(77) | 评论 (0) 编辑

SQL SERVER : 启动时的问题
摘要: 检查事件日志的时候发现每次SQL Server启动的时候都有一些错误,看那意思是文件句柄找不到。 找了下面这篇文档,但仍然没有解决 http://www.microsoft.com/technet/s...阅读全文

posted @ 2009-07-07 09:14 陈希章 阅读(56) | 评论 (0) 编辑

SQL Server 2005 SP3 中的新增功能
摘要: 原文参考:http://technet.microsoft.com/zh-cn/library/dd353312(SQL.90).aspx Microsoft SQL Server 2005 Serv...阅读全文

posted @ 2009-06-30 18:16 陈希章 阅读(192) | 评论 (0) 编辑

SQL Server : Browser服务是干什么的
摘要: 这个服务是SQL Server 2005新增的。我每次讲课都要提问,也要详细讲解的。 简单的说,如果一个物理服务器上面有多个SQL Server实例,那么为了确保客户端能访问到正确的实例,所以SQL...阅读全文

posted @ 2009-06-30 18:15 陈希章 阅读(5232) | 评论 (0) 编辑

SQL Server:如何编写SSMS插件
摘要: 在编写一个插件,找了一些参考资料,摘录如下 SSMS Add-in developmentThe following sites detail how to create SSMS add-ins:E...阅读全文

posted @ 2009-06-30 18:13 陈希章 阅读(220) | 评论 (0) 编辑

SQL Server 探秘: 为什么在通讯时要指定Packet Size的大小
摘要: 这一篇来探讨一下SQL Server网络通讯的几个参数。可能很多朋友并不知道,即便你不指定,那么SQL Server的数据从服务器发送到客户端,肯定是有一些方法的。 SQL Server的通讯是标准的...阅读全文

posted @ 2009-06-30 08:49 陈希章 阅读(220) | 评论 (0) 编辑

SSAS : 外围应用配置器
摘要: SQL Server 2005开始提供了一个新的工具:外围应用配置器,旨在提供更好的安全性保护(我们称为默认安全). 它可以管理两部分的功能 1. 服务与连接:主要与服务的启动,停止,以及是否允许远程...阅读全文

posted @ 2009-06-27 09:15 陈希章 阅读(88) | 评论 (0) 编辑

SQL Server : 几个特殊函数(RAND,CHECKSUM, NEWID)
摘要: 这一篇我们来捋捋在T-SQL中可能会用到的几个特殊的函数 1. 随机数: RAND 返回从 0 到 1 之间的随机 float 值。语法: RAND ( [ seed ] )seed 提供种子值的整数...阅读全文

posted @ 2009-06-26 18:48 陈希章 阅读(1129) | 评论 (3) 编辑

SQL SERVER: 合并相关操作(Union,Except,Intersect)
摘要: SQL Server 中对于结果集有几个处理,值得讲解一下 1. 并集(union,Union all) 这个很简单,是把两个结果集水平合并起来。例如 SELECT * FROM A UNION ...阅读全文

posted @ 2009-06-26 18:31 陈希章 阅读(348) | 评论 (1) 编辑

视图的架构刷新和绑定
摘要: 在数据库设计过程中,我们经常会有这样的情况下 1. 某个基础表会被多个视图或者存储过程引用 2. 修改基础表的时候,我们必须小心翼翼地,因为不会有任何提示告诉我们,如果继续修改,会不会造成视图或者存储...阅读全文

posted @ 2009-06-19 11:24 陈希章 阅读(290) | 评论 (0) 编辑

SQL Server查询优化之:使用提示(Hints)
摘要: 我们很多朋友对SQL Server的优化,尤其是查询优化很感兴趣。但大部分的朋友都不知道如何下手去学习。而且微软的有关资料也大多讳莫如深,这就让这个任务变得很神秘起来。 我的建议是:应该了解和学习常用...阅读全文

posted @ 2009-06-15 17:38 陈希章 阅读(342) | 评论 (0) 编辑

SQL Server基础知识之:设计和实现视图
摘要: 设计和实现视图可谓是数据库物理设计中的一个非常重要的步骤。从一般意义上说,设计和实现视图应该遵循下面的一些建议和原则。 以下内容摘在文档,我对某些重点进行了补充说明(红色部分) 只能在当前数据库中创建...阅读全文

posted @ 2009-06-15 17:31 陈希章 阅读(115) | 评论 (0) 编辑

如何在tempdb出错的情况下修复数据库服务器
摘要: 在数据库服务器规划中,一般我们都建议tempdb要移动到独立的磁盘中去,这样可以提高整个服务器的运行速度。 如果tempdb所在的磁盘,由于某个什么原因而无法重新定位到,此时服务器将无法启动。 那么,...阅读全文

posted @ 2009-06-11 08:25 陈希章 阅读(200) | 评论 (1) 编辑

限制访问SQL Server的客户端IP地址
摘要: 今天被问到这个问题,以前没有处理过,在网上找了一些资料,看起来是可以做到的。特摘录如下,以备查阅 有时候,我们只想使某个IP的计算机才能连接到SQL Server服务器,不允许其他客户端连接,怎么办...阅读全文

posted @ 2009-06-02 09:09 陈希章 阅读(544) | 评论 (0) 编辑

SMO访问SQL Server 2008的要求
摘要: 要想在SMO中访问SQL Server 2008的实例,必须添加下面的引用阅读全文

posted @ 2009-05-25 18:15 陈希章 阅读(141) | 评论 (0) 编辑

数据库文档生成工具
摘要: 一直想自己写一个数据库文档生成工具。今天用了一天的时间,完成了这个夙愿。感觉还是蛮不错的。鼓掌,呵呵 写得比较快,代码还需要整理整理,以及进一步细化。该工具主要使用的技术包括 1. SMO:SQL S...阅读全文

posted @ 2009-05-25 17:23 陈希章 阅读(420) | 评论 (1) 编辑

发现数据库对象的依赖关系
摘要: SQL Server Management Studio中有一个很有意思的工具,可以查看某个对象的依赖和被依赖关系。如下图所示 假设,我们自己的程序也要实现这样的功能,那么该怎么做呢? 1. 首先,创...阅读全文

posted @ 2009-05-24 16:50 陈希章 阅读(111) | 评论 (0) 编辑

数据仓库(集市)之间共享维度表
摘要: 经常有朋友问到一个问题:事实表和维度表是不是一定要在一个数据库里面呢? 为什么会有这样的问题呢?因为我们讲到,如果数据仓库足够大的话,可能会拆分为所谓的数据集市。而通常会按照所谓的业务模块的不同划分,...阅读全文

posted @ 2009-05-21 10:12 陈希章 阅读(195) | 评论 (0) 编辑

使用链接维度
摘要: 接上一篇:假设在不同的数据仓库之间共享维度表,我们可以直接通过多个数据源的做法来实现。但这样做的结果是:在不同的多维项目中,其实还是会保留多维维度表的数据的。只不过,可能转换为了多维格式。 那么,有没...阅读全文

posted @ 2009-05-21 10:11 陈希章 阅读(57) | 评论 (0) 编辑

如何使用专用管理连接进行问题诊断和处理 【摘自SQL Server在线帮助】
摘要: SQL Server 为管理员提供了一种特殊的诊断连接,以供在无法与服务器建立标准连接时使用。即使在 SQL Server 不响应标准连接请求时,管理员也可以使用此诊断连接访问 SQL Server,...阅读全文

posted @ 2009-05-20 10:11 陈希章 阅读(192) | 评论 (0) 编辑

如何对数据进行合并及分组
摘要: 今天在论坛中被问到这样一个问题,就是有一个表格(格式大致如下),没有按照范式设计,现在想对其进行查询,而且能进行分组汇总。 我整理一个例子如下,对该问题进行解释 1.建立一个表格 CREATE TAB...阅读全文

posted @ 2009-05-20 08:17 陈希章 阅读(137) | 评论 (0) 编辑

使用 TABLESAMPLE 限制结果集 【转载】
摘要: 该文转载自:http://msdn.microsoft.com/zh-cn/library/ms189108.aspx TABLESAMPLE是SQL 2005开始引入的一个新语法,它可以针对表的数...阅读全文

posted @ 2009-05-19 11:26 陈希章 阅读(338) | 评论 (0) 编辑

用SQL Server Compact Edition创建移动应用程序 【转载】
摘要: 本文转载自 http://www.bccn.net/Article/sjk/sqlserver/jszl/200709/6545.html 这个文档比较完整地介绍了在移动开发中,如何实现对SQL Se...阅读全文

posted @ 2009-05-17 19:39 陈希章 阅读(41) | 评论 (0) 编辑

如何配置订阅以使用 Web 同步(RMO 编程)【转载】
摘要: 可以参考的一篇文档是 : http://msdn.microsoft.com/zh-cn/library/ms345207.aspx 服务端配置的参考书:http://msdn.microsoft.c...阅读全文

posted @ 2009-05-17 18:19 陈希章 阅读(72) | 评论 (0) 编辑

关于CDC功能的答疑
摘要: 昨天在讲解SQL Server BI新特性的时候,提到了SQL Server 2008数据库引擎的一个增强,就是CDC(Change Data Capture):变更数据捕获。 看起来大家对这个功能都...阅读全文

posted @ 2009-05-16 17:22 陈希章 阅读(171) | 评论 (1) 编辑

SQL Server 2008 : 基于策略的管理(Policy-Based Management)
摘要: 在SQL Server 2008中提出了一套新的管理机制,就是所谓的基于策略的管理(姑且可以称为PBM)。它的主要优势如下 按需管理:PBM提供了系统配置的逻辑视图,因此DBA们可以预先定义各自所需...阅读全文

posted @ 2009-05-14 10:31 陈希章 阅读(281) | 评论 (1) 编辑

升级SQL Server 2008 SP1后可能遇到的一个问题
摘要: 近日通过Windows Update自动更新了SQL Server 2008 的SP1。今天打开的时候,使用Windows验证方式登录,却遇到下面一个错误消息 -------------------...阅读全文

posted @ 2009-05-14 09:18 陈希章 阅读(459) | 评论 (1) 编辑

通过代码执行SQL Server代理任务
摘要: 今天被人问到,假如我们需要在代码中执行SQL Server 的代理任务,那么有什么思路呢? 我马上想到,一般会有两种思路 1. 通过SMO(SQL Server Management Object M...阅读全文

posted @ 2009-05-13 17:13 陈希章 阅读(96) | 评论 (0) 编辑

SQL Server 文件规划 - 文件组
摘要: 1. 什么是文件组? 文件组(Filegroup),顾名思义就是文件的组合。通俗地说,它相当于是一个容器,它里面可以包含一个或者多个数据文件。 2. 为什么需要文件组? 使用文件组主要的目的有两个 ...阅读全文

posted @ 2009-05-13 10:20 陈希章 阅读(569) | 评论 (2) 编辑

SQL Server 文件规划 -位置规划
摘要: 数据库设计中,文件规划是相当重要的一个环节。 这部分内容包括文件数目的规划,大小的规划,位置的规划。 本篇介绍的是文件位置的规划,如下图所示 1. 数据文件 有可能的情况下,应该区分经常更新的表与不...阅读全文

posted @ 2009-05-13 10:13 陈希章 阅读(102) | 评论 (0) 编辑

SQL Server 2008 :安装
摘要: 有关SQL Server 2008的安装相关资料,我整理如下 1. 相关的版本 2. 升级还是迁移 3. 安装过程 4. 安装中心 5. 无人值守安装阅读全文

posted @ 2009-05-13 10:07 陈希章 阅读(66) | 评论 (0) 编辑

使用SQL Server 2008提供的表分区向导
摘要: 表分区(Partition Table)是自从SQL Server 2005就开始提供的功能,解决的问题是大型表的存储和查询。 我们之前大致的语法是这样的 -- ===================...阅读全文

posted @ 2009-04-29 08:22 陈希章 阅读(1208) | 评论 (2) 编辑

通过编程添加自动化作业
摘要: 有时候看一些程序,他们在安装的时候,会在SQL Server里面创建一些特定的作业,以便为其执行自动化任务。我就在想,这是怎么做到的呢?我们以前一般都是通过SSMS的界面来完成这个事情的 1. 通过T...阅读全文

posted @ 2009-04-29 07:53 陈希章 阅读(224) | 评论 (3) 编辑

SQL Server 2008 的CDC功能
摘要: CDC(Change Data Capture)通过对事务日志的异步读取,记录DML操作的发生时间、类型和实际影响的数据变化,然后将这些数据记录到启用CDC时自动创建的表中。通过cdc相关的存储过程,...阅读全文

posted @ 2009-04-28 11:45 陈希章 阅读(356) | 评论 (5) 编辑

使用自定义表类型(SQL Server 2008)
摘要: 在 SQL Server 2008 中,用户定义表类型是指用户所定义的表示表结构定义的类型。您可以使用用户定义表类型为存储过程或函数声明表值参数,或者声明您要在批处理中或在存储过程或函数的主体中使用的...阅读全文

posted @ 2009-04-28 11:07 陈希章 阅读(646) | 评论 (0) 编辑

SQL Server 2008的审核功能
摘要: 这是SQL Server 2008安全性方面的一个新增功能,可以针对服务器乃至数据库级别进行审核(Audit),其精细程度甚至可以到达DML语句级别,也就是很多朋友可能希望的监控INSERT,UPDA...阅读全文

posted @ 2009-04-28 09:29 陈希章 阅读(79) | 评论 (0) 编辑

在SSMS(2008)中对数据库对象进行搜索和筛选
摘要: 我记得在两年前讲SQL Server 2005的课程的时候,有一个朋友提出了这么一个疑问:我的数据库里面的存储过程非常多,有没有什么办法快速定位到我想要的存储过程,除了一个一个去找之外。 虽然看起来不...阅读全文

posted @ 2009-04-28 08:51 陈希章 阅读(67) | 评论 (0) 编辑

如何通过编程方式添加Native Client服务器别名
摘要: 之前我有一篇博客讲到了Native Client中添加服务器别名的问题。请参考下面的链接(讨论服务器别名的内容在该链接文章的底部) http://www.cnblogs.com/chenxizhang...阅读全文

posted @ 2009-04-26 17:03 陈希章 阅读(77) | 评论 (0) 编辑

SQL Server 2008 T-SQL之Merge语法
摘要: Merge语法是对插入,更新,删除这三个操作的合并。根据与源表联接的结果,对目标表执行插入、更新或删除操作。例如,根据在另一个表中找到的差异在一个表中插入、更新或删除行,可以对两个表进行同步。 阅读全文

posted @ 2009-04-26 15:39 陈希章 阅读(222) | 评论 (0) 编辑

SQL Server 2008中的hierarchyid
摘要: 这也是SQL Server 2008的一个重要新增特性。主要解决的问题是拥有层次关系的表格。例如我们日常生活中用到最多的组织结构图。我们一般会用一个Employees表保存员工数据,而每个员工则又可能...阅读全文

posted @ 2009-04-26 15:29 陈希章 阅读(223) | 评论 (0) 编辑

SQL Server 2008中的稀疏列和列集
摘要: 这是两个新增的特性。 关于稀疏列的详细介绍,请参考 http://msdn.microsoft.com/zh-cn/library/cc280604.aspx 关于列集的详细介绍,请参考 http:/...阅读全文

posted @ 2009-04-25 08:00 陈希章 阅读(87) | 评论 (0) 编辑

SQL Server 2008中的FileStream支持
摘要: 服务器有一个属性,即指定该服务器是怎么支持文件流的 /* 实际上文件流的出现就是为了解决对大对象的存储中一个矛盾。 对于大对象,第一种方式是存储在数据库里面,这种方式一般使用image字段,或者var...阅读全文

posted @ 2009-04-25 06:48 陈希章 阅读(902) | 评论 (10) 编辑

行内数据
摘要: 所谓行内数据,最近在讲课中也提到了:SQL Server的行(Row)是不能跨页(Page)的, 准确地说,一行数据的长度最多是8060字节。那么对于那些超过大小的数据怎么办呢?按照正常的理解是,它们...阅读全文

posted @ 2009-04-23 12:07 陈希章 阅读(96) | 评论 (0) 编辑

SQL Server中的命名管道(named pipe)及其使用
摘要: 1. 什么是命名管道? 与TCP/IP(传输控制协议或internet协议)一样,命名管道是一种通讯协议。它一般用于局域网中,因为它要求客户端必须具有访问服务器资源的权限。 要解释这个问题,我还是摘录...阅读全文

posted @ 2009-04-23 11:22 陈希章 阅读(4298) | 评论 (1) 编辑

sp_MSforeachtable和sp_MSforeachdb
摘要: 1)说明系统存储过程sp_MSforeachtable和sp_MSforeachdb,是微软提供的两个不公开的存储过程,从ms sql 6.5开始。存放在SQL Server的MASTER数据库中。 ...阅读全文

posted @ 2009-04-21 17:20 陈希章 阅读(329) | 评论 (0) 编辑

SQL Server 2005两种快照隔离机制的比较
摘要: 总得来说,READ_COMMITTED_SNAPSHOT可能比较适合于原有数据库设计得相对复杂,不想做太多更改的情况下。它不需要去修改以前的存储过程。这其实是READ_COMMITTED隔离级别的一个...阅读全文

posted @ 2009-04-20 11:12 陈希章 阅读(150) | 评论 (0) 编辑

创建索引时应该考虑该列使用时最可能的排序方式
摘要: 在创建索引的时候,默认情况下,SQL Server会把每个键列的排序方式设置为升序。这没有什么理由,就是默认的情况。 但是,升序也许不是最合适的。假设你的索引列经常用来做降序排列,那么就不应该保留默认...阅读全文

posted @ 2009-04-20 10:23 陈希章 阅读(56) | 评论 (0) 编辑

T-SQL查询语句的执行步骤
摘要: T-SQL是需要优化的。而优化的前提是你对它的执行步骤有清楚的认识。我经常去给讲课或者咨询辅导的时候,就发现很多朋友对此了解甚少。下面截取了我的一个PPT,给大家参考一下 下面这个脚本可以解释这个过程...阅读全文

posted @ 2009-04-20 10:18 陈希章 阅读(124) | 评论 (0) 编辑

当SQL Server排序时遇上了NULL值
摘要: 这是一个经常被问到的问题。尤其是客户之前使用的是Oracle,那么他在使用SQL Server的时候会有一个疑问,就是在处理NULL值上面,SQL Server与Oracle的行为不一样 在Oracl...阅读全文

posted @ 2009-04-20 10:11 陈希章 阅读(358) | 评论 (0) 编辑

EXCEPT 和 INTERSECT (Transact-SQL)
摘要: 这两个是SQL 2005增加的新语法,很有意思的。有兴趣的朋友可以参考 http://msdn.microsoft.com/zh-cn/library/ms188055(SQL.90).aspx 比...阅读全文

posted @ 2009-04-18 09:36 陈希章 阅读(100) | 评论 (0) 编辑

再谈谈数据库镜像之客户端重定向
摘要: 这两天在讲数据库设计的时候,再一次提到了数据库镜像。其中也提到了数据库镜像对客户端其实不是完全透明的,这一点与群集有一些区别。 所谓不完全透明,就是说客户端程序还是要知道后端组成镜像拓扑的几台服务器的...阅读全文

posted @ 2009-04-17 07:21 陈希章 阅读(153) | 评论 (0) 编辑

SQL Server中的所有权链及其问题
摘要: 没有多少朋友对所有权链真的理解的。我自己有时候经常回过来看看这些资料,觉得还是很有意思的。下面的内容摘自微软文档,介绍得比较好 简而言之 1. 如果在同一个数据库中,只要两个对象的所有者是一样的,那么...阅读全文

posted @ 2009-04-16 07:43 陈希章 阅读(670) | 评论 (0) 编辑

标识列和GUID列
摘要: 在SQL Server的表中,可能会有两种特殊的列。一种是标识列(Identity),一种是全球唯一标识符(GUID) 首先看第一种 通过使用 IDENTITY 属性可以实现标识符列。这使得开发人员可...阅读全文

posted @ 2009-04-15 22:44 陈希章 阅读(333) | 评论 (0) 编辑

sysname数据类型是什么
摘要: sysname SQL Server 实例包括用户定义的名为 sysname 的数据类型。sysname 用于表列、变量以及用于存储对象名的存储过程参数。sysname 的精确定义与标识符规则相关;因...阅读全文

posted @ 2009-04-15 22:26 陈希章 阅读(1048) | 评论 (4) 编辑

SSMS 2008的智能感知仅仅针对SQL Server 2008的数据库有效
摘要: 早就听说了,SSMS 提供了编写T-SQL时的智能感知。但要注意一下,该功能,仅仅针对SQL Server 2008的数据库有效,而早期版本的数据库则没有任何反应 在工具菜单中还有一个选项来定制这个特...阅读全文

posted @ 2009-04-15 22:23 陈希章 阅读(992) | 评论 (5) 编辑

SQL Server 2008的外围应用配置器到哪里去了
摘要: 在SQL Server 2005中,微软增加了一些新的工具,其中有一个就是“外围应用配置器”,它的主要目的是保证了服务器的默认安全性。 但这个工具在SQL Server 2008已经找不到了。原来是合...阅读全文

posted @ 2009-04-15 21:50 陈希章 阅读(4165) | 评论 (3) 编辑

SQL Server 2008 - Replication and Filestream, are both supported together?【转载】
摘要: SQL Server 2008 - Replication and Filestream, are both supported together? 本文转载自http://sqlserver-qa...阅读全文

posted @ 2009-04-15 21:49 陈希章 阅读(80) | 评论 (0) 编辑

数据库设计阶段中为何要考虑“反规范化”
摘要: 在设计关系型数据库的时候,我们都会被告知,应该尽量地遵照范式(NF)的原则去做(范式,在有的时候也称为规划化),范式的主要目标就是减少冗余。冗余主要的问题是:重复的数据和增加了操作的复杂性。 但正如世...阅读全文

posted @ 2009-04-14 11:30 陈希章 阅读(199) | 评论 (0) 编辑

timestamp列的有关知识
摘要: 1. timestamp与time没有关系,它并不是一个时间 2. timestamp其实是一个行的版本,所以它的一个同义词是rowversion 【SQL Server 2005中确实有rowver...阅读全文

posted @ 2009-04-13 16:08 陈希章 阅读(90) | 评论 (0) 编辑

SQL Server所支持的 Sql_variant 数据类型
摘要: 这是一个不起眼,也用得不多的数据类型,但在某些场合下,可能很有用 一种数据类型,用于存储 SQL Server 2005 支持的各种数据类型(不包括 text、ntext、image、timestam...阅读全文

posted @ 2009-04-13 15:52 陈希章 阅读(439) | 评论 (0) 编辑

关于SQL Server 2005 SP2中提供的Vardecimal存储格式
摘要: 这个新的存储格式的主要目的是将decimalh和numberic的长度可变长。这样就可以节省一些存储空间。关于它的一些介绍,可以参考微软官方的文档 ms-help://MS.SQLCC.v9/MS.S...阅读全文

posted @ 2009-04-13 15:39 陈希章 阅读(174) | 评论 (0) 编辑

事务操作中几个有意思的概念
摘要: 1. 什么叫隐式事务? 这其实是一个不太容易搞清楚的概念,来看看文档是怎么说的http://technet.microsoft.com/zh-cn/library/ms188317.aspx 当连接以...阅读全文

posted @ 2009-04-13 11:20 陈希章 阅读(65) | 评论 (0) 编辑

如何设置SQL Server服务器上面的CPU占用过高的警报
摘要: 如何需要在安装有SQL Server的服务器设置CPU占用过高的警报,例如当其超过90%的时候,就给管理员发一个邮件。 我们很容易想到,是不是可以在SQL Server Agent中设置一个警报呢?听...阅读全文

posted @ 2009-04-13 09:58 陈希章 阅读(335) | 评论 (0) 编辑

在使用SMO时,检索IsSystemObject属性将导致性能急剧下降的解决方法
摘要: 当我们会议为什么使用SMO代替DMO时,一个主要的原因就是增加性能。外加上可以延迟连接到SQL Server,以及限制从对象中得到信息的数量,SMO的性能已经得到了非常大的提高。SMO当建立对象时,仅...阅读全文

posted @ 2009-04-10 16:00 陈希章 阅读(50) | 评论 (0) 编辑

SQL Server中的统计信息
摘要: 在SQL Server中,为了便于在查询时帮助查询引擎确定最优的执行计划,SQL Server有一个机制,就是收集有关列以及索引的统计信息。 那么这些统计信息因为对查询会有帮助,而且随着数阅读全文

posted @ 2009-04-06 09:01 陈希章 阅读(131) | 评论 (0) 编辑

创建本地数据库时发生错误及其解决方案
摘要: 用过vs2005和SQL2005 的朋友不知道遇到过这样的问题吗?“由于启动用户实例的进程时出错,导致无法生成 SQL Server 的用户实例。该连接将关闭。”, 英文版的提示是“Failed to阅读全文

posted @ 2009-04-03 07:43 陈希章 阅读(152) | 评论 (0) 编辑

SQL Server中的扩展属性
摘要: 在SQL Server 2000中,有一个系统表是sysproperties。而这个表在SQL Server 2005之后变成了sys.extended_properties  阅读全文

posted @ 2009-03-26 22:09 陈希章 阅读(142) | 评论 (0) 编辑

SQL Server 2005 中的架构与用户
摘要: 从 SQL Server 2005 开始,每个对象都属于一个数据库架构。数据库架构是一个独立于数据库用户的非重复命名空间。您可以将架构视为对象的容器。可以在数据库中创建和更改架构,并且可以授予用户访问阅读全文

posted @ 2009-03-24 10:14 陈希章 阅读(643) | 评论 (0) 编辑

SQL Server日志文件总结
摘要: 交易日志(Transaction logs)是数据库结构中非常重要但又经常被忽略的部分。由于它并不像数据库中的schema那样活跃,因此很少有人关注交易日志。 交易日志是针对数据库改变所做的记录,它阅读全文

posted @ 2009-03-24 08:15 陈希章 阅读(96) | 评论 (0) 编辑

T-SQL脚本中引用当前脚本目录
摘要: 有时候,我们在T-SQL脚本中,需要引用到当前脚本文件所在的文件夹目录。例如在备份操作,或者导入程序集这种操作。那么该如何处理呢? 1. 首先要意识到T-SQL脚本中是没有办法动态取得一个目录的。所以阅读全文

posted @ 2009-03-23 15:08 陈希章 阅读(101) | 评论 (0) 编辑

SSMS在SQL Server 2008这个版本中的改进 【转载】
摘要: 本文转载自:http://win.chinaunix.net/bbs/thread-11354-1-1.html 1.在注册的服务器组中一次SQL查询可以针对多个服务器执行。   首先是要在“已注册的阅读全文

posted @ 2009-03-23 10:37 陈希章 阅读(171) | 评论 (0) 编辑

在数据库恢复之前将数据库置为单用户模式
摘要: 今天被朋友问到,他想通过一个脚本自动地对数据库进行还原。但经常遇到的情况是:试图还原的时候,因为有活动的用户连接,所以还原无法完成 要解决该问题,可以在还原之前运行下面的脚本,将数据库置为单用户模阅读全文

posted @ 2009-03-19 07:57 陈希章 阅读(429) | 评论 (0) 编辑

SQL Server 存储过程调用和参数运用
摘要: 在SQL Server 的存储过程中,支持输入(Input)、输出参数(Output),也支持返回值参数(ReturnValue) 关于输入参数,大家都很好理解,就是我们提供数值给存储过程,这就好比是阅读全文

posted @ 2009-03-19 07:49 陈希章 阅读(4332) | 评论 (0) 编辑

安装SQL Server 2008时可能遇到性能计数器不一致的情况
摘要: 这个问题很常见,具体的解决方法请参考下面这个链接,很不错,有截图 http://blog.csdn.net/andyelvis/archive/2008/11/08/3253985.aspx &nbs阅读全文

posted @ 2009-02-26 17:04 陈希章 阅读(181) | 评论 (0) 编辑

当动态T-SQL语句遇到除零的问题
摘要: 如果一个T-SQL语句是动态构造的,例如动态地将几个公式组织在一个语句中,那么就会有一个情况,如果某个公式出现错误(典型的例子是除0错误),那么整个语句会失败。 那么,能不能够有一个什么方法,忽略某个阅读全文

posted @ 2009-02-06 16:54 陈希章 阅读(402) | 评论 (0) 编辑

触发器是根据什么触发的
摘要: 这是我犯的一个错误。 昨天被人问到,如果编写了一个Delete触发器,那么如果删除1行和删除100行的行为是否有不一样呢? 我回答是不一样,删除100行的话,触发100次。回答之后马上意识到这可能是有阅读全文

posted @ 2009-01-01 13:50 陈希章 阅读(103) | 评论 (0) 编辑

全文搜索的体系结构(SQL Server 2008)
摘要: 全文搜索由全文引擎提供支持。全文引擎有两个角色:索引支持和查询支持。 从 SQL Server 2008 开始,全文搜索体系结构包括以下进程: SQL Server 进程 (sq阅读全文

posted @ 2008-11-15 20:26 陈希章 阅读(424) | 评论 (0) 编辑

TOP语句与Order By语句
摘要: 默认情况下,如果在子查询,函数,视图中尝试去使用ORDER BY, CREATE VIEW dbo.VSortedOrders AS SELECT orderid, customerid F阅读全文

posted @ 2008-11-10 10:31 陈希章 阅读(1342) | 评论 (1) 编辑

T-SQL中聚合函数对空值(NULL)的处理
摘要: 聚合函数对一组值执行计算,并返回单个值。除了 COUNT 以外,聚合函数都会忽略空值。聚合函数经常与 SELECT 语句的 GROUP BY 子句一起使用。 所有聚合函数均为确定性函数。这表示任何时候阅读全文

posted @ 2008-11-10 10:11 陈希章 阅读(384) | 评论 (0) 编辑

T-SQL查询的逻辑工作原理
摘要: 很多朋友都会使用T-SQL编写查询,但实际上对于其工作原理大多知之甚少。下面我们来分析一下查询的逻辑工作原理,也就是说一个查询到底是怎么一步一步的工作,最终给我们展示数据的。 认真观察下面这个图。想想阅读全文

posted @ 2008-11-10 09:51 陈希章 阅读(488) | 评论 (0) 编辑

SQL Server 2005 功能比较 【转载】
摘要: SQL Server 2005 功能比较 发布日期: 2005/09/14 Microsoft 已重新设计了 SQL Server 2005 产品系列,有 Express、Workgroup、Sta阅读全文

posted @ 2008-11-10 07:43 陈希章 阅读(165) | 评论 (0) 编辑

CROSS JOIN
摘要: 最近在讲到T-SQL查询的Join部分时,一下子没有想起来CROSS JOIN的用法,因为其实平常也确实基本不用到。特意找了一个例子,以供参考 CROSS JOIN又称为笛卡尔乘积,实际上是把两个表乘阅读全文

posted @ 2008-11-10 07:37 陈希章 阅读(4207) | 评论 (0) 编辑

IDENTITY列及其编号的问题
摘要: 在数据库设计中,我们为了让某一个列的数值能够自动地增长,会使用标识列(IDENTITY),标识列使用起来很简单,只要字段数据类型是整数,通过设置一个属性即可完成该操作 这个列是自动递增的,换句话说阅读全文

posted @ 2008-09-03 15:37 陈希章 阅读(99) | 评论 (0) 编辑

如何编写数据库存储过程?
摘要: 在程序设计的时候,出于安全、效率和扩展性方面的考虑,我们会把很多数据操作都封装为存储过程。 存储过程是已保存的 Transact-SQL 语句集合,或对 Microsoft .NET Framewor阅读全文

posted @ 2008-09-03 15:00 陈希章 阅读(800) | 评论 (0) 编辑

事务日志截断
摘要: 如果从来没有从事务日志中删除过日志记录,日志记录将会逐渐填满供物理日志文件使用的所有磁盘空间。日志截断可自动释放磁盘空间以备事务日志重新使用。 一个要点就是:截断之后要收缩数据库,这样才会有效 如何截阅读全文

posted @ 2008-08-22 10:54 陈希章 阅读(59) | 评论 (0) 编辑

SQL Server 2005自带的Service Broker功能
摘要: --Service Broker 简介 Service Broker是使SQL Server成为一个构建可靠的分布式异步应用程序平台。 Service Broker并不是一个通用的消息处理系统。 Se阅读全文

posted @ 2008-08-18 17:19 陈希章 阅读(163) | 评论 (0) 编辑

存储过程编写和优化的经验
摘要: 介绍:在数据库的开发过程中,经常会遇到复杂的业务逻辑和对数据库的操作,这个时候就会用SP来封装数据库操作。如果项目的SP较多,书写又没有一定的规范,将会影响以后的系统维护困难和大SP逻辑的难以理解,另阅读全文

posted @ 2008-08-17 12:00 陈希章 阅读(87) | 评论 (0) 编辑

UNIQUE约束和主键
摘要: UNIQUE约束和主键的比较 可以使用 UNIQUE 约束确保在非主键列中不输入重复的值。尽管 UNIQUE 约束和 PRIMARY KEY 约束都强制唯一性,但想要强制一列或多列组合(不是主键)的阅读全文

posted @ 2008-08-17 11:59 陈希章 阅读(608) | 评论 (0) 编辑

走近SQL Server的游标
摘要: 因为有的朋友不清楚游标到底是什么?以及为什么要用,和如何用? 这篇文章我将专门介绍这些内容 关系数据库中的操作会对整个行集产生影响。由 SELECT 语句返回的行集包括所有满足该语句 WHERE 子阅读全文

posted @ 2008-08-17 11:58 陈希章 阅读(129) | 评论 (0) 编辑

SQL Server中的日期类型
摘要: /*1。中文版默认的格式是这样的 yyyy-mm-dd Thh:mm:ss.mmm,即在数据库里真正存放的格式2。安装时可以指定3。在验证用户输入的时候会有一些内置规则来确保输入的是正确的日期具体说,阅读全文

posted @ 2008-08-17 11:57 陈希章 阅读(308) | 评论 (0) 编辑

索引的填充因子
摘要: 创建索引时,可以指定一个填充因子,以便在索引的每个叶级页上留出额外的间隙和保留一定百分比的空间,供将来表的数据存储容量进行扩充和减少页拆分的可能性。填充因子的值是从 0&nbs阅读全文

posted @ 2008-08-17 11:56 陈希章 阅读(493) | 评论 (0) 编辑

有关连接字符串的一些细节
摘要: 关于针对不同的数据库服务器的连接字符串的编写方式,请参考下面的链接 http://connectionstrings.com/default.aspx (这是一个独立的第三方网站,整理了几乎所有的连接阅读全文

posted @ 2008-07-31 08:02 陈希章 阅读(96) | 评论 (0) 编辑

SQL Server错误严重性级别和异常处理
摘要: 关于SQL Server的错误严重性级别的说明,强烈认真看一下下面的两个链接 脱机帮助 ms-help://MS.SQLCC.v9/MS.SQLSVR.v9.zh-CHS/sqlerrm9/html/阅读全文

posted @ 2008-07-29 17:00 陈希章 阅读(1357) | 评论 (2) 编辑

SQL SERVER的单用户模式以及专用管理员连接
摘要: 我们知道SQL Server中最重要的一个数据库是master数据库,这个系统数据库如果有损坏的话,毫无疑问服务器就将不能正常地提供服务。 在某些时候,master数据库确实受到损坏,无法通过正常的方阅读全文

posted @ 2008-07-29 16:15 陈希章 阅读(2146) | 评论 (0) 编辑

Share Memory协议是怎么回事
摘要: 细心的朋友会发现,SQL Server 2005所支持的网络库协议中多了一个Share Memory协议,那么它是用在什么场合的呢?下面是官方文档的一些介绍: 从运行在同一台计算机上的客户端到 阅读全文

posted @ 2008-07-29 16:13 陈希章 阅读(530) | 评论 (0) 编辑

如何更改服务器名称
摘要: 在某些时候,例如有的培训中心通过克隆磁盘的方式批量安装操作系统以及SQL Server,会出现一个问题,因为安装操作系统时的机器名字是一样的,所以SQL Server记录的服务器名字是一样的,往往在时阅读全文

posted @ 2008-07-29 16:11 陈希章 阅读(337) | 评论 (0) 编辑

如何移动SQL SERVER的系统数据库
摘要: 以下链接有完整的说明 http://msdn.microsoft.com/zh-cn/library/ms345408.aspx 特别提一下的是,在做性能调优的时候,其中一般都有一条是:阅读全文

posted @ 2008-07-29 16:09 陈希章 阅读(93) | 评论 (0) 编辑

SQL Server 2005的服务器角色(public)的问题
摘要: SQL Server 默认会有9个服务器角色,而且这些角色是不能删除和新增、修改的。关于这些角色相关介绍和权限,请参考 其中有一个特殊的角色public,任何登录都会属于该角色,它只拥有的权限阅读全文

posted @ 2008-07-29 12:06 陈希章 阅读(2933) | 评论 (3) 编辑

防止SQL注入式攻击的免费工具【转载】
摘要: 随着 SQL INJECTION 攻击的明显增多,微软近日发布了三个免费工具,帮助网站管理员和检测存在的风险并对可能的攻击进行拦截。 Scrawlr 下载地址:https://download.sp阅读全文

posted @ 2008-06-25 15:47 陈希章 阅读(204) | 评论 (0) 编辑

为文本字段实现类似"求和"的效果
摘要: 在SQL Server里面,针对数字字段,我们可以用SUM函数求出多个值的总和。有的时候,我们需要为文本值实现类似的效果。例如 有一个表包含了计算机的基础信息,而另外一个表包含了IP地址信息。一个计算阅读全文

posted @ 2008-06-23 18:40 陈希章 阅读(105) | 评论 (0) 编辑

使用SQL Server的OpenXML解析带有命名空间的XML片段
摘要: SQL Server的OpenXML函数可以针对XML片段或者文档进行解析,并处理。有关资料,你可以参考http://msdn.microsoft.com/en-us/library/ms186918阅读全文

posted @ 2008-06-22 07:46 陈希章 阅读(421) | 评论 (0) 编辑

SQL Server 数据库对象的扩展属性
摘要: 使用扩展属性,您可以添加文本(如描述性或指导性内容)、输入掩码和格式规则,将它们作为数据库中的对象或数据库自身的属性。例如,您可以将扩展属性添加到架构、架构的视图或视图中的列。由于扩展属性存储在数据库阅读全文

posted @ 2008-06-19 14:54 陈希章 阅读(440) | 评论 (0) 编辑

SQL Server 2005的Resource数据库
摘要: 一个新的SQL Server 2005安装总是包括四个数据库:master、model、tempdb和msdb。它也包含第五个“隐藏的”数据库。我们无法使用可以列出所有数据库的一般SQL命令来看到它。阅读全文

posted @ 2008-06-19 14:07 陈希章 阅读(369) | 评论 (1) 编辑

优化数据库之前的10个问题
摘要: 在优化你的数据库时,你可能没有用到这些细节的优点。以下是10个关于你的数据库性能的问题,需要你问问自己…… 1. 假设你的数据库不需要存储特殊字符的能力,尤其是Unicode标准中规定的那些字符,你有阅读全文

posted @ 2008-06-12 14:54 陈希章 阅读(120) | 评论 (0) 编辑

SQL Server 2005 数据库引擎的容量规范

posted @ 2008-06-11 11:43 陈希章 阅读(317) | 评论 (0) 编辑