MS SQL Server
文章平均质量分 76
hxd001_810
这个作者很懒,什么都没留下…
展开
-
T-SQL中的Select查询
T-SQL中的Select查询Select是SQL中功能最为强大的命令。对于Select---这个最重要的数据操作命令(DML)可以有无尽的话题。要明白,了解和掌握Select为我们提供的多种选择以及一些创造行动技术方法,是成为一个成功的SQL Server开发人员或者DBA的关键。在SQL Server中所提供的两种主要的用户工具:企业管理器和查询分析器,都是用于开发和测试select语原创 2006-05-30 21:52:00 · 1479 阅读 · 0 评论 -
动态创建命令语句
一般来说,我们会在程序运行期间将所要运行的命令语句组合成一个字符串,然后使用EXECUTE命令或系统存储过程sp_executesql来运行。今天,我们将来详细探讨这两种方法各自的优劣点。(一) 使用EXECUTE命令运行命令字符串要使用EXECUTE命令来运行一个命令字符串的语法如下:EXEC[UTE] ({@string_variable|[N] stql_string} [+...n原创 2007-12-06 13:47:00 · 1894 阅读 · 1 评论 -
从master备份中还原master数据库
下面是我整理的有关“从master备份中还原master数据库”的常见方法,以期能和大家分享!整体思路1: 在恢复master的备份时要注意:必须在单用户(single user)模式下进行 a.进入单用户模式的方法: 首先,在命令行模式下输入sqlservr -c -f -m或者输入sqlservr -m 其中:-c 可以缩短启动时间,SQL Serve原创 2007-11-28 12:03:00 · 2580 阅读 · 2 评论 -
触发器---单条与多条数据日志的考虑
/*单条与多条数据日志的考虑常规情况下,在编写触发器时,最容易犯的错误就是只考虑到单条数据日志的添加、修改与删除,而没有考虑到多条数据日志的批处理添加、更新与删除的问题。比如:如果你使用INSERT...SELECT命令来批处理添加多条数据日志时,若是触发器没有做周详的判断,很可能会发生不可预料的错误。下面的范例程序是以SQL SERVER2000的范例数据库pubs中的sales与titles数原创 2007-11-27 15:18:00 · 1462 阅读 · 0 评论 -
文件和文件组
Microsoft SQL Server 2000 使用一组操作系统文件映射数据库。数据库中的所有数据和对象(如表、存储过程、触发器和视图)都存储在下列操作系统文件中: 主要 该文件包含数据库的启动信息,并用于存储数据。每个数据库都有一个主要数据文件。次要这些文件含有不能置于主要数据文件中的所有数据。如果主文件可以包含数据库中的所有数据,那么数据库就不需要次要数据文件。有些数据库可能足原创 2007-11-27 11:44:00 · 1714 阅读 · 0 评论 -
SQL Server 6.5升级到SQL SERVER 2000
SQL Server 6.5升级到SQL SERVER 2000前提条件:(一) SQL Server 6.5一般安装在 Windows NT 4.0 平台下,要求NT 达到 SP4.SQL Server 6.5 至少要打到 sp4,打到SP5更好(二) SQL Server 6.5的Tempdb数据库数据文件,要扩展到10M以上,如果你要升级的数据库很大,超过500M,建议按照数据文件大小*10原创 2007-11-27 11:41:00 · 1075 阅读 · 0 评论 -
数据库迁移问题
问题:由于硬盘分区空间不够,我想将一个数据库存放的位置从一个分区转移到另外的分区,请问我该如何操作?问题分析:在新建一个数据库的时候,我们可以分别指定其数据文件(.mdf)以及事务日志文件(.ldf)存放的位置。如果需要重新指定一个数据库存放的位置,对于一般用户数据库与系统数据库而言,要分别用不同的方法来实现。问题解答:在SQL Server中,要将一个数据库存放的位置转移到另外的位置,可原创 2007-07-17 09:41:00 · 1493 阅读 · 0 评论 -
杀死锁和进程
如何去手动的杀死进程和锁?最简单的办法,重新启动服务。但是这里要介绍一个存储过程,通过显式的调用,可以杀死进程和锁。use mastergoif exists (select * from dbo.sysobjects where id = object_id(N[dbo].[p_killspid]) and OBJECTPROPERTY(id, NIsProcedure) = 1)d原创 2007-07-09 13:12:00 · 2592 阅读 · 0 评论 -
孤立用户问题
问题1:在利用企业管理器使用向导新建一个登录,并且在“数据库访问”选项下面赋予这个登录访问某个数据库的权限,遇到如下错误信息:错误 21002:[SQL-DMO]用户"user"已经存在。分析和解答:这个错误一般会发生在将数据库从一台服务器迁移到另一台服务器之后,如果在新的服务器里面找不到某一个用户对应的登录,就会发生“孤立用户”的问题。此时,尽管在新的服务器里面没有这个登录,而在该数据库的s原创 2007-07-14 14:39:00 · 1116 阅读 · 0 评论 -
实现数组的功能
SQL Server并没有数组类型,ANSI SQL-92标准中并没有任何有关数组方面的定义。要实现其他高级语言中的数组功能,我们必须使用一些特殊的处理方法,其中包括特殊设计的字符参数、临时表、XML等。方法1:使用特殊设计的字符参数来模拟数组。我们可以用VARCHAR数据类型来模拟一个数组,数组中元素用逗号隔开,接着通过WHILE循环使用CHARINDEX以及SUBSTRING函数来提取其中的元原创 2007-07-12 00:22:00 · 911 阅读 · 0 评论 -
跨库触发器应用
--在数据库test中创建表aause testgocreate table aa(id int primary key not null,name1 varchar(20),name2 varchar(20),name3 varchar(20))--在数据库test1中创建表bbuse test1gocreate table bb(id int primary key not null,name原创 2007-07-06 08:52:00 · 2620 阅读 · 2 评论 -
探讨 CASE 的不同用法
探讨 CASE 的不同用法CASE 可能是 SQL 中被误用最多的关键字之一。虽然你可能以前用过这个关键字来创建字段,但是它还具有更多用法。例如,你可以在 WHERE 子句中使用 CASE。首先让我们看一下 CASE 的语法。在一般的 SELECT 中,其语法如下:SELECT =CASEWHEN THEN WHEN THEN ELSE END 在上面的代码中需要用具体的参数代替尖括号中的内原创 2007-04-06 14:28:00 · 950 阅读 · 0 评论 -
恢复损坏的master数据库
恢复损坏的master数据库我深信,大多数网友一看到这个标题,就头痛,就欲“远而避之”!然,身为类似数据库管理员的我们,又怎能去回避它呢?面对问题,我们终究还是要去正视它并想办法解决它的。相信:风雨过后会有美丽的彩虹的!遇到损坏或者错误的master数据库是最难解决情况之一。Master数据库包含了SQL Server需要的关键信息。如果master数据库出错,那么SQL Server原创 2006-06-24 16:29:00 · 2159 阅读 · 0 评论 -
T-SQL中的Select查询(续4)
T-SQL中的Select查询(续4)这两天因房子问题,实在抽不出空来,这不现在趁午休时间,就把该“T-SQL中的Select查询”系列结个尾吧!今天呢,让我们一起来探讨一下“空值”的相关问题吧!在关系数据库模型中使用空值来表示缺失的数据。在实际中,空值说明还没有向数据库中输入相应的数据,或者某个特定的纪录行暂不需要使用该列。从技术的角度来说,空值表示“未知的值”,任何包含空值的表原创 2006-06-18 15:10:00 · 1335 阅读 · 0 评论 -
T-SQL中的Select查询(续3)
T-SQL中的Select查询(续)SQL可以按照多个列来排序,并且用来排序的列不必是select语句要返回的结果列,所以排序列的方式具有很大的灵活性。如果确实需要对数据进行排序,那么就应当利用ordre by子句来实现它,这是一种好的开发习惯。(1) 使用列名指定排序顺序SELECT FirstName,LastNameFROM dbo.CustomerORDER原创 2006-06-11 12:37:00 · 1615 阅读 · 1 评论 -
T-SQL中的Select查询(续1)
T-SQL中的Select查询(续)下面来谈一下:Case表达式。这里所说的case命令与其它语言中用到的case命令是有区别的。它不是用来对程序流程进行控制的,而是基于条件来逻辑地确定一个表达式的值。要注意:系统不会为case表达式提供列名,因此,必须记住一定要为每个case表达式提供列名。1. 简单的Case。在简单的case中,第一个参数是要检查的表达式,接着是原创 2006-06-04 14:18:00 · 1135 阅读 · 0 评论 -
T-SQL中的Select查询(续2)
T-SQL中的Select查询现在来讨论一下:WHERE条件。Where条件对from子句产生的数据进行筛选,挑出那些要放到结果集中的记录行。在这里需要提到一点的是:一种提高客户/服务器数据库性能的有效途径是:让数据库引擎来完成筛选数据的工作,而不要让应用程序来过滤那些无用的数据。然而,如果数据库的设计使得需要在where子句中使用函数来定位记录行,这些函数就会严重的降低查询的性能,因原创 2006-06-04 16:38:00 · 1264 阅读 · 0 评论 -
分布式查询
/*分布式查询*/分布式查询(Distributed Query)能够访问存放在同一部计算机或不同计算机上的SQL Server或不同种类的数据源。众所周知,OLE DB是Microsoft规格的公用数据访问的应用程序开发界面(Application Programming Interface,API),而SQL Server2000即是使用OLE DB来支持分布式查询的。SQL Server20原创 2007-12-07 17:34:00 · 3121 阅读 · 1 评论