
SQLServer2000开发
天地客人
这个作者很懒,什么都没留下…
展开
-
去除指定表中数据类型是VARCHAR,CHAR,NVARCHAR的字段值中的不可见字符
去除指定表中数据类型是VARCHAR,CHAR,NVARCHAR的字段值中的不可见字符 --作用:去除指定表中数据类型是VARCHAR,CHAR,NVARCHAR的字段值中的不可见字符--注意:此处只去掉前后的不可见字符,不包括中间的字符,而且没有区分中文--有兴趣的可以自己加个判别的中文,其实也很简单的,就是限定一个字符的范围就可以了--日期:2004-11-04--作者:ICER转载 2006-05-23 11:27:00 · 4358 阅读 · 4 评论 -
SQL Server里函数的两种用法(可以代替游标)
SQL Server里函数的两种用法(可以代替游标)1. 因为update里不能用存储过程,然而要根据更新表的某些字段还要进行计算。我们常常采用游标的方法,这里用函数的方法实现。 函数部分:CREATE FUNCTION [DBO].[FUN_GETTIME] (@TASKPHASEID INT) RETURNS FLOAT AS BEGIN DECLARE @TASKID INT,原创 2005-11-30 12:30:00 · 1189 阅读 · 0 评论 -
金额阿拉伯数字转换为中文的自定义函数
金额阿拉伯数字转换为中文的自定义函数CREATE FUNCTION ChangeBigSmall(@ChangeMoney money) RETURNS VarChar(100) AS BEGIN Declare @String1 char(20) Declare @String2 char(30) Declare @String4 V原创 2005-11-30 12:29:00 · 1547 阅读 · 0 评论 -
未公布的访问注册表的扩展存储过程
未公布的访问注册表的扩展存储过程SQL Server中包含了几个可以访问系统注册表的扩展存储过程.但实际上这几个扩展存储过程是未公开的,从sql server 7.0就有了,在SQL server 2000中仍然保留,他们以后可能会删除.但是这几个存储过程却提供了在当前的SQL Server版本中访问系统注册表的能力,而且很多人利用SQL Server来进行攻击系统时,往往都会用到这几个扩展存储原创 2005-11-30 12:41:00 · 1224 阅读 · 0 评论 -
Stored Procedure(存储过程)编写经验和优化措施
Stored Procedure(存储过程)编写经验和优化措施 一、前言:在经过一段时间的存储过程开发之后,写下了一些开发时候的小结和经验与大家共享,希望对大家有益,主要是针对Sybase和SQL Server数据库,但其它数据库应该有一些共性。二、适合读者对象:数据库开发程序员,数据库的数据量很多,涉及到对SP(存储过程)的优化的项目开发人员,对数据库有浓厚兴趣的人。三、介绍:在数据库的开发过程原创 2005-11-30 12:55:00 · 1270 阅读 · 0 评论 -
孤立用户问题
孤立用户问题把数据库备份还原到另一个服务器时,可能会遇到孤立用户的问题。下面的方案显示并解决了这个问题: 通过执行 sp_addlogin,把登录 janetl 改名为 dbo。 sp_addlogin janetl, dbo备份数据库。在本例中,备份 Northwind。 BACKUP DATABASE NorthwindTO DISK = c:/mssql/backup/north原创 2005-11-30 13:04:00 · 1364 阅读 · 1 评论 -
join 使用详解方式
join 方式(1) cross join 参与select语句所有表的的所有行的笛卡尔乘积 select au_lname ,title from authors cross join titiles outer join 对参与join的两个表有主从之分,处理方式以主表的每条数据去match 从属表的列,合乎条件的数据是我们所要的答案,不合乎条件原创 2005-11-30 12:37:00 · 1618 阅读 · 0 评论 -
全文索引——CONTAINS 语法
全文索引——CONTAINS 语法我们通常在 WHERE 子句中使用 CONTAINS ,就象这样:SELECT * FROM table_name WHERE CONTAINS(fullText_column,search contents)。 我们通过例子来学习,假设有表 students,其中的 address 是全文本检索的列。1. 查询住址在北京的学生SELECT student_i原创 2005-11-01 08:34:00 · 1667 阅读 · 1 评论 -
SQL Server 2000之日志传送功能——问题解决
SQL Server 2000之日志传送功能——问题解决可能發生的錯誤一、残余数据 当您进行SQL Server 2000日志传送的实验时,也许偶而会中断设定过程。如果真是如此,那么某些资料仍然会存入每台服务器的日志传送资料表,并且影响到后续的日志传送设定动作。为了保证这些剩余资料都会被清除,请确实删除每台服务器msdb数据库内日志传送资料表之相关资料。错误信息:Error 14261: T原创 2005-10-28 17:35:00 · 1214 阅读 · 0 评论 -
sql server的cube操作符使用详解
sql server的cube操作符使用详解cube操作符要使用cube,首先要了解group by其实cube和rollup区别不太大,只是在基于group by 子句创建和汇总分组的可能的组合上有一定差别,cube将返回的更多的可能组合。如果在 group by 子句中有n个列或者是有n个表达式的话,sqlserver在结果集上会返回2的n-1次幂个可能组合。注意:使用cube操作符时,最多可原创 2005-11-30 12:35:00 · 1312 阅读 · 0 评论 -
使用约束详解
使用约束1.使用 primary key 约束 其值能唯一的标识表中的每一行。这样的一列或多列成为表的主键,通过它可强制表的实体完整性。 job_id int primary key clustered emp_id empid constraint pk_emp_id primary key nonclustered2.使用foreign key 约束 约束引用其他的表 jo原创 2005-11-30 12:38:00 · 1172 阅读 · 0 评论 -
锁定数据库的一个表
锁定数据库的一个表SELECT * FROM table WITH (HOLDLOCK) 其他事务可以读取表,但不能更新删除SELECT * FROM table WITH (TABLOCKX) 其他事务不能读取表,更新和删除SELECT 语句中“加锁选项”的功能说明SQL Server提供了强大而完备的锁机制来帮助实现数据库系统的并发性和高性能。用户既能使用SQL Server的缺省原创 2006-03-15 15:20:00 · 1084 阅读 · 0 评论 -
脚本生成工具(SCPTXFR)参数详解
脚本生成工具(SCPTXFR)参数详解 命令行语法:SCPTXFR /s /d {[/I] | [/P ]} {[/F ] | [/f ]} /q /r /O /T /A /E /C /N /X /H /G /Y /?/s — 指示要连接到的源服务器。/d — 指示要为之编写脚本的源数据库。/I —原创 2006-05-23 10:56:00 · 4393 阅读 · 0 评论 -
深入探讨SQL Server 2000对XML的支持
深入探讨SQL Server 2000对XML的支持 Wayne [作者简介:]Wayne,新一代程序员,十二岁时开始学习编程,十三岁时拥有自己的电脑,先后学过Basic、Pascal、C、FOXPRO、VB、DELPHI、C++、SQL,学习J转载 2006-05-14 15:39:00 · 3457 阅读 · 0 评论 -
在Asp中使用存储过程数值类型值
在Asp中使用存储过程数值类型值 作者:[本站编辑] 来源:[优快云] 浏览:[ ]转载 2006-02-28 00:38:00 · 1313 阅读 · 0 评论 -
.Net下调用SqlServer2k存储过程
.Net下调用SqlServer2k存储过程 首先,在SqlServer中创建存储过程,在调用时分为有参数和没有参数两种情况,先就简单的没有参数的情况简要的介绍: 假设存储过程如下: CREATE PROC SelectAll AS SELECT * FROM StudentInf 则此sp的调用如下: SqlCommand selectCMD = ne原创 2006-02-27 23:06:00 · 1475 阅读 · 0 评论 -
SqlServer存储过程/函数加/解密
SqlServer存储过程/函数加/解密 存储过程、存储函数的加密:WITH ENCRYPTIONCREATE procedure dbo.sp_XML_main @table_name nvarchar(260)=,@dirname nvarchar(20)=WITH ENCRYPTIONas begin....................en原创 2006-02-27 23:04:00 · 1555 阅读 · 2 评论 -
使用SQL Mail收发和自动处理邮件
使用SQL Mail收发和自动处理邮件SQL SERVER提供了通过EXCHANGE或OUTLOOK收发邮件的扩展存储过程,下面将这几个过程简单的介绍一下。 一、启动SQL Mail xp_startmail @user,@password @user和@password都是可选的 也可打开Enterprise Manager中的S原创 2006-02-13 08:37:00 · 1315 阅读 · 0 评论 -
对一个加锁的表进行解锁
对一个加锁的表进行解锁 use master --必须在master数据库中创建goif exists (select * from dbo.sysobjects where id = object_id(N[dbo].[p_lockinfo]) and OBJECTPROPERTY(id, NIsProcedure) = 1)drop procedure [dbo].[p_l转载 2006-03-15 15:18:00 · 1217 阅读 · 0 评论 -
SQL快马加鞭
SQL快马加鞭 我们在使用SQL时往往会陷入一个误区,即太关注于所得的结果是否正确,而忽略了不同的实现方法之间可能存在的性能差异,这种性能差异在大型的或是复杂的数据库环境中(如联机事务处理OLTP或决策支持系统DSS)中表现得尤为明显。笔者在工作实践中发现,不良的SQL往往来自于不恰当的索引设计、不充分的连接条件和不可优化的 where子句。在对它们进行适当的优化后,其运行速度有了明显的提高!原创 2005-10-19 08:36:00 · 1147 阅读 · 0 评论 -
如何在 SQL Server 启动时自动执行一个存储过程
如何在 SQL Server 启动时自动执行一个存储过程 使用存储过程 sp_procoption。语法:sp_procoption [[@ProcName =] procedure] [,[@OptionName =] option] [,[@OptionValue =] value]举例说明:/* yoursp 是存储过程的名称,它应在 master 中并属于 dbo。 */sp_原创 2005-10-19 08:33:00 · 1307 阅读 · 0 评论 -
Transact_SQL小手册
Transact_SQL小手册--语 句 功 能--数据操作SELECT --从数据库表中检索数据行和列INSERT --向数据库表添加新数据行DELETE --从数据库表中删除数据行UPDATE --更新数据库表中的数据--数据定义CREATE TABLE --创建一个数据库表DROP TABLE --从数据库中删除表ALTER TABLE --修改数据库表结构CREATE VIEW --创建一原创 2005-09-29 15:54:00 · 1087 阅读 · 0 评论 -
正确配置和使用SQL mail
正确配置和使用SQL mail >用户在网上注册后,系统将随机产生的密码发送到用户登记的Email>用户在论坛的帖子有回复时将内容发送到用户的Email因为上述过程都是在存储过程中完成的,所以避免了前台程序对参数的传输处理,也不需要再用第三方的组件完成,感觉比较方便。1.为了使用SQL mail,首先你的服务器上得有SMTP服务,我没有安装win2000 server自带的SMTP,而是用imai原创 2005-10-06 18:49:00 · 1046 阅读 · 0 评论 -
索引在数据库中的应用分析
索引在数据库中的应用分析 索引是提高数据查询最有效的方法,也是最难全面掌握的技术,因为正确的索引可能使效率提高10000倍,而无效的索 引可能是浪费了数据库空间,甚至大大降低查询性能。 索引的管理成本 1、 存储索引的磁盘空间 2、 执行数据修改操作(INSERT、UPDATE、DELETE)产生的索引维护 3、 在数据处理时回需额外的回退空间。 实际数据修改测试: 一个表有字段A原创 2005-10-03 10:44:00 · 1724 阅读 · 0 评论 -
如何通过T-SQL获得当前连接的客户端的IP和机器名
如何通过T-SQL获得当前连接的客户端的IP和机器名 /***************************************************************************************************************** 下面的SP是返回所有的客户端的IP和HOSTNAME,目的是可以通过JOB返回某一时间点的CLIENT 的连接原创 2005-09-30 13:48:00 · 1225 阅读 · 0 评论 -
回滚事务日志文件中的事务
问:怎样使用Transact-SQL回滚某个位于事务日志文件中的事务(例如,ID 0000:0010a183)?答:出于预防数据错误的考虑,SQL Server并不支持个别事务的回滚。举例来说,假设两个事务T1和T2使用现金余额域。T1添加了500美金,T2使用更新后的值进行了某个操作。如果回滚T1,则T2可能是错误的。但是,您可以使用时间戳或事务日志标记将日志恢复至预定义的标记或时间点。以下两个原创 2005-09-26 21:03:00 · 3424 阅读 · 0 评论 -
使用SQL Mail收发和自动处理邮件中的扩展存储过程简介
使用SQL Mail收发和自动处理邮件中的扩展存储过程简介SQL SERVER提供了通过EXCHANGE或OUTLOOK收发邮件的扩展存储过程,下面将这几个过程简单的介绍一下。 一、启动SQL Mail xp_startmail @user,@password @user和@password都是可选的 也可打开Enterprise Manager中的Support Services,在SQL Ma原创 2005-10-06 18:45:00 · 1165 阅读 · 0 评论 -
数据库开发——精典
1.按姓氏笔画排序:Select * From TableName Order By CustomerName Collate Chinese_PRC_Stroke_ci_as 2.数据库加密:select encrypt(原始密码)select pwdencrypt(原始密码)select pwdcompare(原始密码,加密后密码) = 1--相同;否则不相同3.取回表中字段:原创 2005-09-29 15:32:00 · 3699 阅读 · 1 评论 -
获得所有表的表记录,和使用空间的SQL
获得所有表的表记录,和使用空间的SQLexec sp_MSForEachTable @precommand=Ncreate table ##(id int identity,表名 sysname,字段数 int,记录数 int,保留空间 Nvarchar(10),使用空间 varchar(10),索引使用空间 varchar(10),未用空间 varchar(10)),@command1=N原创 2005-09-26 14:24:00 · 969 阅读 · 0 评论 -
浅析SQL Server的锁机制
浅析SQL Server的锁机制作者:宋立桓E-mail: slhhacker@21cn.com [导读: 各种大型数据库所采用的锁的基本理论是一致的,但在具体实现上各有差别。SQL Server更强调由系统来管理锁。在用户有SQL请求时,系统分析请求,自动在满足锁定条件和系统性能之间为数据库加上适当的锁,同时系统在运行期间常常自动进行优化处理,实行动态加锁。对于一般的用户而言,通过系统的自动锁定原创 2005-09-30 13:52:00 · 1154 阅读 · 0 评论 -
SQL Server的存储过程调用Com组件
--SQL Server的存储过程调用Com组件 /*--下面的部分在VB中完成 首先我们先用VB 作一个最简单的组件 工程名称: testSQLCOM类名: TestMath 函数,计算两个整数相加的结果Public Function AddMe(a As Long, b As Long) As Long AddMe = a + bEnd Function 编译生成后,我们就可以在 Sql原创 2005-09-30 13:54:00 · 1208 阅读 · 0 评论 -
导入导出大全
导入导出大全 ******* 导出到excelEXEC master..xp_cmdshell bcp SettleDB.dbo.shanghu out c:/temp1.xls -c -q -S"GNETDATA/GNETDATA" -U"sa" -P"" /*********** 导入Excelselect * from openrowset(MicroSoft.Jet.OleDB.原创 2005-09-30 14:11:00 · 1381 阅读 · 0 评论 -
如何不通过其他工具,把图片、声音等存储到sql中
如何不通过其他工具,把图片、声音等存储到sql中用image类型方法:1、建立过程CREATE PROCEDURE sp_textcopy ( @srvname varchar (30), @login varchar (30), @password varchar (30), @dbname varchar (30), @tbname原创 2005-10-16 19:07:00 · 1891 阅读 · 0 评论 -
SQL Server 2000之日志传送功能 - 设定
SQL Server 2000之日志传送功能 - 设定 日志传送功能可自动复制数据库的交易日志文件,并回存到备援服务器 (standby server) 的另外一个数据库。因此可大幅提高SQL Server数据库之可用性。因为备援数据库完整地接收来源数据库的异动情况,所以它就是一份来源数据库的复本 - 差别仅在于资料复制与加载过程所产生的时间差。然而,当主要服务器停摆时,您就可以将备援服原创 2005-10-28 17:33:00 · 1318 阅读 · 0 评论 -
SQL Server 2000之日志传送功能 - 描述
SQL Server 2000之日志传送功能 - 描述角色变更、角色互换、以及监控服务器所在位置 当线上数据库停摆时(可能是计划内维护工作,或是预期外的状况),如果还有备援服务器上的数据库可供存取,您可能会比较安心一点。一个设计良好的日志传送系统(将数据库交易日志文件从主要服务器传送到备援服务器)即可给予您这样的自信心。内建于 SQL Serve 2000 企业板与开发版的 Enterpri原创 2005-10-28 17:30:00 · 1248 阅读 · 0 评论 -
MS SQL SERVER 图像或大文本的输入输出
MS SQL SERVER 图像或大文本的输入输出在MS SQL SERVER 安装目录下有个可执行文件叫 TEXTCOPY.EXE 可对 MS SQL SERVER 中的文本或图像数据进行输入输出. 不过你可以在MS-DOS方式下执行textcopy /? 得到它的描述。 下面是这个工具的描述: Copies a single text or image value into or out of原创 2005-10-28 12:57:00 · 1534 阅读 · 0 评论 -
实现上下文相关视图
实现上下文相关视图一、 引言 在数据库应用的开发过程中,我们会经常碰到类似这样的查询语句用来查询某个业务员本人某天的业务记录:SELECT * FROM DailyBusiness WHERE ClerkId = a001AND OccurDate = 2002-5-1同时,出于业务的一些特殊要求,本人只能查看自己的业务数据,或者某人只能查看某日的数据等等。一般,我们用到的方法是在客原创 2005-10-28 11:20:00 · 1153 阅读 · 0 评论 -
锁的概述
锁的概述一. 为什么要引入锁多个用户同时对数据库的并发操作时会带来以下数据不一致的问题:丢失更新A,B两个用户读同一数据并进行修改,其中一个用户的修改结果破坏了另一个修改的结果,比如订票系统脏读A用户修改了数据,随后B用户又读出该数据,但A用户因为某些原因取消了对数据的修改,数据恢复原值,此时B得到的数据就与数据库内的数据产生了不一致不可重复读A用户读取数据,随后B用户读出该数据并修改,此时A用户原创 2005-10-19 08:49:00 · 1126 阅读 · 0 评论 -
游标概观
游标概观 相信很多Delphi程序员都写过这样的代码:...beginMyDataSet.Open;MyDataSet.Frist;while not ( MyDataSet.BOF or MyDataSet.EOF) dobegin...end;MyDataSet.Close;end;...很久以来,我们习惯了用这样的代码对数据库返回的数据进行逐行操作。在用客户端程序的代码打开数据集之前,我们把原创 2005-10-19 08:45:00 · 1819 阅读 · 0 评论 -
访问不同电脑上的数据库(远程只要联好网就一样)
--访问不同电脑上的数据库(远程只要联好网就一样) --1.如果经常访问或数据量大,建议用链接服务器 --创建链接服务器exec sp_addlinkedserver srv_lnk,,SQLOLEDB,远程服务器名或ip地址exec sp_addlinkedsrvlogin srv_lnk,false,null,用户名,密码go --查询示例select * f原创 2005-10-02 18:37:00 · 1716 阅读 · 2 评论