SQLServer2000
文章平均质量分 62
mw248
这个作者很懒,什么都没留下…
展开
-
如何快速地比较两数据库结构的差异
手工来作对比既费时又费力,于是写了一段比较两数据库结构差异的SQL,比较内容有:表字段(类型、是否允许空、标识、字段顺序、默认值、默认值名称、公式、排序规则)索引(是否主键、是否聚集索引、是否唯一索引、索引名称)视图存储过程触发器函数check约束外键约束(主键表、主键列、外键名称)可连接任何数据库运行,只需制定变量@db1、@db2即可declare @db1 varchar(50),@db2原创 2005-12-15 11:10:00 · 1286 阅读 · 1 评论 -
.Net下的数据备份和还原
数据库:SQL Server ;引用SQLDMO◆数据备份 : /// /// 备份数据库 /// private void btnBackUp_Click(object sender, System.EventArgs e) { this.Cursor = Cursors.WaitCursor; this.label1.Text = " 正在进行档案库的数据备份,这可能需转载 2006-07-06 08:57:00 · 827 阅读 · 0 评论 -
MS-SQL数据库开发常用汇总
1.按姓氏笔画排序:Select * From TableName Order By CustomerName Collate Chinese_PRC_Stroke_ci_as 2.数据库加密:select encrypt(原始密码)select pwdencrypt(原始密码)select pwdcompare(原始密码,加密后密码) = 1--相同;否则不相同 encrypt(转载 2006-07-04 11:03:00 · 705 阅读 · 0 评论 -
海量数据库的查询优化及分页算法方案
随着“金盾工程”建设的逐步深入和公安信息化的高速发展,公安计算机应用系统被广泛应用在各警种、各部门。与此同时,应用系统体系的核心、系统数据的存放地――数据库也随着实际应用而急剧膨胀,一些大规模的系统,如人口系统的数据甚至超过了1000万条,可谓海量。那么,如何实现快速地从这些超大容量的数据库中提取数据(查询)、分析、统计以及提取数据后进行数据分页已成为各地系统管理员和数据库管理员亟待解决的难题。转载 2006-07-02 23:56:00 · 765 阅读 · 0 评论 -
SQL Server日期计算
a. 一个月的第一天SELECT DATEADD(mm, DATEDIFF(mm,0,getdate()), 0) b. 本周的星期一SELECT DATEADD(wk, DATEDIFF(wk,0,getdate()), 0) c. 一年的第一天SELECT DATEADD(yy, DATEDIFF(yy,0,getdate()), 0) d. 季度的第一天SELECT转载 2006-07-02 22:45:00 · 582 阅读 · 0 评论 -
Sql Server基本函数
1.字符串函数 长度与分析用 datalength(Char_expr) 返回字符串包含字符数,但不包含后面的空格 substring(expression,start,length) 不多说了,取子串 right(char_expr,int_expr) 返回字符串右边int_expr个字符 字符操作类 upper(char_expr) 转为大写 lower(char_expr) 转为小写 spa转载 2006-06-30 11:32:00 · 609 阅读 · 0 评论 -
SQL导入导出大全
/******* 导出到Excel EXEC master..xp_cmdshell ’bcp SettleDB.dbo.shanghu out c:/temp1.xls -c -q -S"GNETDATA/GNETDATA" -U"sa" -P""’ /*********** 导入Excel SELECT * FROM OpenDataSource( ’Microsoft.Jet.OL转载 2006-06-30 11:30:00 · 4699 阅读 · 1 评论 -
邹建:备份还原数据库的通用存储过程
注意,下面备份还原都是用存储过程实现! if exists (select * from dbo.sysobjects where id = object_id(N[dbo].[p_backupdb]) and OBJECTPROPERTY(id, NIsProcedure) = 1)drop procedure [dbo].[p_backupdb]GO /**//*--备份数据库的通用存转载 2006-06-21 11:17:00 · 867 阅读 · 0 评论 -
SQL Server编写存储过程小工具
在开发数据库系统的过程中,经常要写很多的存储过程。为了统一格式和简化开发过程,我编写一些存储过程,用来自动生成存储过程。下面就为您简单介绍一下它们。其中一个用于生成Insert过程,另一个用于生成Update过程。 Sp_GenInsert 该过程运行后,它为给定的表生成一个完整的Insert过程。如果原来的表有标识列,您得将生成的过程中的SET IDNTITY_INSERT ON 语句手工删除。转载 2006-06-06 19:20:00 · 691 阅读 · 0 评论 -
通过一条sql语句访问不同数据库服务器中的数据库对象的方法
在我们做数据库程序开发的时候,经常会遇到这种情况:需要将一个数据库服务器中的数据导入到另一个数据库服务器的表中。通常我们会使用这种方法:先把一个数据库中的数据取出来放到某出,然后再把这些数据一条条插入到目的数据库中,这种方法效率较低,写起程序来也很繁琐,容易出错。另外一种方法是使用bcp或BULK INSERT语句,将数据导入到一个文件中,再从此文件中导出到目的数据库,这种方法虽然效率稍高,但也有原创 2006-01-22 23:28:00 · 1050 阅读 · 1 评论 -
可定制的数据库备份和恢复程序
在我们做数据库系统的程序时,经常需要为客户做一个数据库的备份和恢复程序,特别是对于一些非专业的数据库用户,这个程序更是必不可少,而且操作必需足够简单。因为在很多系统中,数据库的备份恢复功能都是相近的,因此,我们最好做一个通用的数据库备份恢复程序,这样就不必每个系统都开发一套了。 要开发这样一套系统,我个人认为应该满足以下要求: 1. 备份恢复操作应该有历史记录(必需有一个备份列表,列出备份文件原创 2006-01-22 23:17:00 · 608 阅读 · 0 评论 -
将小写金额转换为中文大写的SQL函数
CREATE FUNCTION [dbo].[f_num_chn] (@num numeric(14,2))RETURNS varchar(100) WITH ENCRYPTIONASBEGIN--版权所有:pbsql DECLARE @n_data VARCHAR(20),@c_data VARCHAR(100),@n_str VARCHAR(10),@i int SET @n_data=R原创 2005-12-15 11:16:00 · 796 阅读 · 0 评论 -
查找数据表中不存在的ID号
CREATE PROCEDURE sp_recycleASDECLARE @maxid int,@sql varchar(8000)IF exists(SELECT * FROM t)BEGIN SELECT @maxid=MAX(id) FROM t CREATE TABLE #t(id int) SET @sql=SELECT TOP +CAST(@maxid AS varchar)原创 2005-12-15 11:05:00 · 668 阅读 · 0 评论 -
压缩日志及数据库文件大小
减小日志的方法:一、用如下步做了:1、DUMP TRANSACTION 庫名 WITH no_log2、dbcc shrinkfile(logfilename)3、收縮數據庫4、設定自動收縮。二、分离数据库,删除日志文件,再附加,OK!右击数据库--所有任务--分离or 附加三、1、backup log 庫名 WITH no_log2、dbcc shrinkfile(logfilename)3、收原创 2005-12-15 11:23:00 · 663 阅读 · 0 评论 -
一个将数据分页的存储过程
CREATE PROCEDURE sp_page @tb varchar(50), --表名 @col varchar(50), --按该列来进行分页 @coltype int, --@col列的类型,0-数字类型,1-字符类型,2-日期时间类型 @orderby bit, --排序,0-顺序,1-倒序 @coll原创 2005-12-15 11:22:00 · 803 阅读 · 0 评论 -
存储过程中写日志
create trigger tron 表for updateas--记录信息declare @o int ,@f int ,@t int ,@ret int ,@info varchar(1000) --要记录的信息 ,@path varchar(255) --日志文件路径 ,@tmp intselec原创 2005-12-15 11:13:00 · 2113 阅读 · 0 评论 -
将小写金额转换为英文大写的SQL函数
CREATE FUNCTION [dbo].[f_num_eng] (@num numeric(15,2))RETURNS varchar(400) WITH ENCRYPTIONASBEGIN--All rights reserved. pbsql DECLARE @i int,@hundreds int,@tenth int,@one int DECLARE @thousand int,@原创 2005-12-15 11:17:00 · 986 阅读 · 0 评论 -
随机提取N条记录的SQL语句
Sql server: select top 10 * from 表 order by newid()Access: SELECT top 10 * FROM 表 ORDER BY Rnd(id) Rnd(id) 其中的id是自动编号字段,可以利用其他任何数值来完成比如用姓名字段(UserName) SELECT top 10 * FROM 表 ORDER BY Rnd(len(转载 2006-07-04 11:04:00 · 873 阅读 · 0 评论