随笔分类 -  数据库技术

要精通数据库,还有比较长的路要走
sql2005新特性 for xml , outer apply ,多行转成单列方法
摘要:----分割字符串,并生成临时表,可用于字符串分割,并进行数据库 IN 函数查询 ,如:select * from abc where id in (select * from split('1,2,3',','))create function split( @SourceSql varchar(8000), @StrSeprate varchar(10))returns @temp table(F1 varchar(100))asbegin declare @i int set @SourceSql=rtrim(ltrim(@SourceSql)) set 阅读全文

posted @ 2012-10-06 23:05 阿栋.c# 阅读(584) 评论(1) 推荐(0)

数据库备份还原到指定时间
摘要:---是完整备份.此时应该先备份一下事务日志文件.BACKUP LOG dbname TO DISK = 'c:\dbname.bak' WITH NO_TRUNCATE;--然后还原昨天晚上9点多的数据库备份RESTORE DATABASE dbname FROM DISK = '备份的文件' WITH NORECOVERY,REPLACE;--还原刚刚备份的事务日志,并在10点钟停止RESTO... 阅读全文

posted @ 2009-06-24 08:30 阿栋.c# 阅读(200) 评论(0) 推荐(0)

转---支持非主键排序的SQL存储过程
摘要:CREATE PROCEDURE pagination @tbName nvarchar(255) , -- 表名(允许多张表的join) @keyorder nvarchar(255) , -- 用于排序的字段名 后面可以追加' asc' 或' desc', 不支持对多个字段排序 @keymain nvarchar(255), -- 主键字段名(如果用于排序的字段的值是唯一的,应将此参数设为'... 阅读全文

posted @ 2009-05-22 14:25 阿栋.c# 阅读(349) 评论(0) 推荐(0)

SQL2000 排名
摘要:列出每一行的排名是一個常見的需求,可惜 SQL 並沒有一個很直接的方式達到這個需求。要以 SQL 列出排名,基本的概念是要做一個表格自我連結 (self join),將結果依序列出,然後算出每一行之前 (包含那一行本身) 有多少行數。這樣講讀者聽得可能有點困惑,所以最好的方式是用一個實例來介紹。假設我們有以下的表格:Total_Sales 表格 Name Sales John 10 Jennife... 阅读全文

posted @ 2008-08-15 15:40 阿栋.c# 阅读(497) 评论(1) 推荐(0)

删除master库中不安全的扩展存储过程
摘要:--删除master库中不安全的扩展存储过程 use master go --它可以直接运行系统命令-------------------------------------------------- execute sp_dropextendedproc 'xp_cmdshell' go --对安全有威胁的OLE存储过程--------------------------------------... 阅读全文

posted @ 2008-06-19 23:01 阿栋.c# 阅读(405) 评论(0) 推荐(0)

ASP在使用SQL SERVER存储过程中的问题
摘要:ASP在给存储过程传递参数的时候,只能按照所写的存储过程定义的变量的顺序一个一个传递,不能跳跃 负责会出现不能把值传递给你所想的那个变量。 阅读全文

posted @ 2008-04-17 13:50 阿栋.c# 阅读(115) 评论(0) 推荐(0)

ASP中调用存储过程、语法、写法-sql server数据
摘要:ASP与存储过程(Stored Procedures)的文章不少,但是我怀疑作者们是否真正实践过。我在初学时查阅过大量相关资料,发现其中提供的很多方法实际操作起来并不是那么回事。对于简单的应用,这些资料也许是有帮助的,但仅限于此,因为它们根本就是千篇一律,互相抄袭,稍微复杂点的应用,就全都语焉不详了。 现在,我基本上通过调用存储过程访问SQL Server,以下的文字虽不敢保证绝对... 阅读全文

posted @ 2008-04-17 11:27 阿栋.c# 阅读(248) 评论(0) 推荐(0)

删除在建表时SQL SERVER2000指定PRIMARY KEY引起的 聚合索引
摘要:declare @s nvarchar(4000) select @s='alter table '+quotename(object_name(parent_obj)) +' drop constraint '+quotename(name) from sysobjects where xtype='PK' ... 阅读全文

posted @ 2008-04-16 14:30 阿栋.c# 阅读(224) 评论(0) 推荐(0)

DBCC DBREINDEX重建索引提高SQL Server性能
摘要:大多数SQL Server表需要索引来提高数据的访问速度,如果没有索引,SQL Server 要进行表格扫描读取表中的每一个记录才能找到索要的数据。索引可以分为簇索引和非簇索引,簇索引通过重排表中的数据来提高数据的访问速度,而非簇索引则通过维护表中的数据指针来提高数据的索引。 1. 索引的体系结构 为什么要不断的维护表的索引?首先,简单介绍一下索引的体系结构。SQL Server在硬盘中用8KB页... 阅读全文

posted @ 2008-04-16 11:02 阿栋.c# 阅读(955) 评论(0) 推荐(0)

数据库系统不能自动删除备份的原因之一
摘要:在SQL SERVER 2000 中,如果数据库中有脱机的数据库,将导致数据库系统无法自动删除备份。 阅读全文

posted @ 2008-02-27 09:37 阿栋.c# 阅读(361) 评论(0) 推荐(0)

导航