《高性能的数据库》 第四讲 编程细节(2) |
第四讲 编程细节(下部分)
1、触发器
2、游标
3、函数
4、存储过程
5、事务
---------------------
作者:懒虫 # SapphireStudio .
欢迎访问我们的站点www.chair3.com
欢迎转载。
--------------------
上次得到不少朋友的捧场,信心大增了:),决定趁着五一…… |
|
《高性能的数据库》 第四讲 编程细节(1) |
第四讲 编程细节(上部分)
1、触发器
2、游标
3、函数
4、存储过程
5、事务
---------------------
作者:懒虫 # SapphireStudio .
欢迎访问我们的站点:www.chair3.com
欢迎转载。
--------------------
这里只打算讲解四部分了,也就最简单、最常用的四部分。
…… |
|
MD5算法的T-SQL实现(FOR SQL2000)(二) |
IF EXISTS(SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[MD5_ConvertToWordArray]') AND xtype IN(N'FN', N'IF', N'TF'))
DROP FUNCTION [dbo].[MD5_ConvertToWordArray]
GO
/*****************************************************************************
* Name: MD5_ConvertToWordArray
* Descri…… |
|
MD5算法的T-SQL实现(FOR SQL2000)(一) |
/*****************************************************************************
* Name: T-SQL MD5算法实现
* Author: Rambo Qian
* Create Date: 2003-04-10
* Last Modified by: Rambo Qian
* Last Update Date: 2003-04-16
* Version: V1.0.00
******************************************************************…… |
|
存储过程替换text,ntext列中的字符串 |
/*
author:amjn
date:2003-03-28
version:1.0
function:替换text,ntext列中的字符串(不支持中文)
*/
declare @ptr varbinary(16)
declare @amjnId int
declare @Position int,@len int
set @len=datalength('ILOVEHJL')
declare wux_Cursor scroll Cursor
for
select textptr([Name]),[amjnId] from USA201
for read o…… |
|
关于SQL Server中几个未公布的访问注册表的扩展存储过 |
SQL Server中包含了几个可以访问系统注册表的扩展存储过程.但实际上这几个扩展存储过程是未公开的,从sql server 7.0就有了,
在SQL server 2000中仍然保留,他们以后可能会删除.但是这几个存储过程却提供了在当前的SQL Server版本中访问系统注册表的能力,
而且很多人利用SQL Server来进行攻击系统时,往往都会用到这几个扩展存…… |
|
更新你的联机丛书 |
随着SQL 2000 SP3的release,Books Online也推出了新的版本
可是,安装Microsoft SQL Server 2000 联机丛书(更新 - SP3)之后,在QA或者EM中按F1,出来的还是旧的BOL,怎么办?
查查注册表,很容易就找到了
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\80\Tools\Help\HelpFile
里面放的是帮助的地址
如果装…… |
|
问:如何将 XML 文件导入 SQL Server 2000? |
导入 XML 文件
(Microsoft SQL Server 开发组供稿,[email protected])
问:如何将 XML 文件导入 SQL Server 2000?
答:您可以用三种方发将 XML 文件导入 SQL Server 2000。下面介绍这几种方法。
如果您想将文档的实体和属性提取到相关表中,那么将 XML 文件导入 SQL Server 的最快方法是使用 SQL Server 2000 We…… |
|
Stored Procedure(存储过程)编写经验和优化措施 |
一、前言:在经过一段时间的存储过程开发之后,写下了一些开发时候的小结和经验与大家共享,希望对大家有益,主要是针对Sybase和SQL Server数据库,但其它数据库应该有一些共性。
二、适合读者对象:数据库开发程序员,数据库的数据量很多,涉及到对SP(存储过程)的优化的项目开发人员,对数据库有浓厚兴趣的人。
三、介…… |
|
利用SQL Server的扩展属性象access一样显示列的注释 |
access的设计视图有个不错的功能-----设计列的注释,这可以让设计者清楚地看到每个列的意义。一般的sql server建表时没有这个功能,但是他有扩展属性,这个功能也不错,可以把注释写到这里面,然后把相应的结果作为rs返回到页面进行应用
我想,这在动态显示数据库的table的列信息时候可能比较有用(记得好像以前论坛里也有…… |
|
SQL Server 7.0数据库的六种数据移动方法 |
本人从事的工作是数据库管理员,要维护多台服务器中的数据库,经常把某台服务器中的某个数据库移动到另外一台服务器,对数据的移动有些心得体会,希望和大家共同交流。
1. 通过工具DTS的设计器进行导入或导出
DTS的设计器功能强大,支持多任务,也是可视化界面,容易操作,但知道的人一般不多,如果只是进行SQL Server数…… |
|
1069错误(由于登录失败而无法启动服务)解决方法 |
在本版面出现这个问题的频率也算是很高的了,新手通常会比较多遇到这个问题
原因很简单,安装SQL Server时是使用默认登录用户来作为启动SQL Server服务的账号(对于自己使用的单机,通常就是administrator了),当该用户更改了用户名(如有人喜欢把administrator改成admin)或更改了其口令时,再次启动服务器,就出现“同于…… |
|
处理孤立用户的存储过程 |
CREATE PROCEDURE [LoneUser]
--INPUT
@DBName nvarchar(50),
@UserName nvarchar(50)
AS
Exec sp_configure 'allow updates','1'
RECONFIGURE WITH OVERRIDE
Declare @ExecStr nvarchar(4000)
Select @ExecStr = ' Declare @b varbinary(85) '
…… |
|
SQL Server非正常删除日志文件(ldf)恢复方法 |
事务日志文件(ldf)在SQL Server服务未启动的情况下被删除(SQL Server在工作状态下是无法删除日志文件),这种情况下启动SQL服务后,相应数据库即被标志成置疑(suspend)状态
按目前本人实验结果,恢复方法如下:
1,分离被置疑的数据库,可以使用sp_detach_db
2,附加数据库,可以使用sp_attach_single_file_db
SQL…… |
|
关于MSSQL占用过多内存的问题 |
经常看见有人问,MSSQL占用了太多的内存,而且还不断的增长;或者说已经设置了使用内存,可是它没有用到那么多,这是怎么一回事儿呢?
首先,我们来看看MSSQL是怎样使用内存的。
最大的开销一般是用于数据缓存,如果内存足够,它会把用过的数据和觉得你会用到的数据统统扔到内存中,直到内存不足的时候,才把命中率低的数…… |
|
如何使Microsoft SQL Server的日志文件不会增大? |
如何缩小MSSQL的日志文件已经是一个经常性的问题了,不过这个问题在精华区已经有不少答案了,我这里也不再赘述。
现在我们讨论一下治本的问题,即如何使日志文件不再增大?
先介绍一个简单的方法。
就是把数据库的故障还原模型设置为“简单”(SQL2K)。这样它就会在Checkpoint的时候截断日志。
具体操作方法是:
1、在…… |
|
利用事务日志来恢复Update、Delete误操作引起的数据丢 |
可能有不少朋友遇到过这样的问题:
update或delete语句忘带了where子句,或where子句精度不够,执行之后造成了严重的后果,
这种情况的数据恢复只能利用事务日志的备份来进行,所以如果你的SQL没有进行相应的全库备份
或不能备份日志(truncate log on checkpoint选项为1),那么就无法进行数据的恢复了,或者
只能恢复…… |
|
如何使Microsoft SQL Server的日志文件不会增大? |
如何缩小MSSQL的日志文件已经是一个经常性的问题了,不过这个问题在精华区已经有不少答案了,我这里也不再赘述。
现在我们讨论一下治本的问题,即如何使日志文件不再增大?
先介绍一个简单的方法。
就是把数据库的故障还原模型设置为“简单”(SQL2K)。这样它就会在Checkpoint的时候截断日志。
具体操作方法是:
1、在…… |
|
SQL脚本生成的一些BUG |
email: [email protected]
微软的SQL脚本生成令我伤透了心……我一直以为是我的程序上的问题,或者我操作上的失误,
并且,客服务人员屡屡埋怨我的程序bug,多次测试之后,靠,原来都是微软惹的祸……
Sql Server 的脚本生成有不少漏洞,经常由它生成的脚本运行起来却有错误。下面举例说明:
1、并没有根据sysd…… |
|
如何随机选取n条记录或者对记录作随机排序? |
Q. 如何得到随机排序结果?
A. 要得到随机排序的列,或者返回x条随机选择的列,你可以使用随机数。但是RAND函数在一个查询中只能返回一个结果。你可以在NOWID函数返回的列上做ORDER BY。请看示例:
SELECT *
FROM Northwind..Orders
ORDER BY NEWID()
SELECT TOP 10 *
FROM Northwind..Orders
ORDER BY NEW…… |
|
[1][2][3][4] › » 20条/页 共97条 |