易截截图软件、单文件、免安装、纯绿色、仅160KB

网上找到的SQL库比较语句

以下是第一篇:
/*--比较两个数据库的表结构差异
--*/
/*--调用示例
exec p_comparestructure 'xzkh_model','xzkh_new'
--*/
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[p_comparestructure]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
drop procedure [dbo].[p_comparestructure]
GO
create proc p_comparestructure
@dbname1 varchar(250), --要比较的数据库名1
@dbname2 varchar(250) --要比较的数据库名2
as
create table #tb1(表名1 varchar(250),字段名 varchar(250),序号 int,标识 bit,主键 bit,类型 varchar(250),
占用字节数 int,长度 int,小数位数 int,允许空 bit,默认值 varchar(500),字段说明 varchar(500))
create table #tb2(表名2 varchar(250),字段名 varchar(250),序号 int,标识 bit,主键 bit,类型 varchar(250),
占用字节数 int,长度 int,小数位数 int,允许空 bit,默认值 varchar(500),字段说明 varchar(500))
--得到数据库1的结构
exec('insert into #tb1 SELECT
表名=d.name,字段名=a.name,序号=a.colid,
标识=case when a.status=0x80 then 1 else 0 end,
主键=case when exists(SELECT 1 from '+@dbname1+'..sysobjects where xtype=''PK'' and name in (
SELECT name from '+@dbname1+'..sysindexes WHERE indid in(
SELECT indid from '+@dbname1+'..sysindexkeys WHERE id = a.id AND colid=a.colid
))) then 1 else 0 end,
类型=b.name, 占用字节数=a.length,长度=a.prec,小数位数=a.scale, 允许空=a.isnullable,
默认值=isnull(e.text,''''''),字段说明=isnull(g.[value],'''''')
from '+@dbname1+'..syscolumns a
left join '+@dbname1+'..systypes b on a.xtype=b.xusertype
inner join '+@dbname1+'..sysobjects d on a.id=d.id and d.xtype=''U'' and d.name<>''dtproperties''
left join '+@dbname1+'..syscomments e on a.cdefault=e.id
left join '+@dbname1+'..sysproperties g on a.id=g.id and a.colid=g.smallid
order by a.id,a.colorder')
--得到数据库2的结构
exec('insert into #tb2 SELECT
表名=d.name,字段名=a.name,序号=a.colid,
标识=case when a.status=0x80 then 1 else 0 end,
主键=case when exists(SELECT 1 from '+@dbname2+'..sysobjects where xtype=''PK'' and name in (
SELECT name


相关文档:

DateTime类型的数据SQL语句转换

以下转载,原文摘自http://www.cnblogs.com/fubeidong/archive/2007/07/06/526247.html
数据库中有个字段叫orderTime,是DateTime类型的数据,如果我们用以下SQL语句把它取出来:
select
orderTime
from orders
则会把时间都显示出来,而如果改成下面的SQL语句:
select
orderTime = convert(varchar(10),orderTime, ......

Sql Mobile 数据库开始之前的一点问题总结

1、安装Sql Server2005 Mobile Edition;
2、具体在创建一个工程以后,想使用SqlServerCe必须在自己工程的引用里面添加一个dll才行;
其目录在:C:\Program Files\Microsoft SQL Server\90\Tools\Binn\VSShell\Common7\IDE\System.Data.SqlServerCe.dll
添加了以后就可以使用Mobile的一些数据库操作的类库了。 ......

经典SQL语句大全

转自:http://www.sqlkey.cn/sql-yuju/sql_yuju.html
 
一、基础
1、说明:创建数据库
CREATE DATABASE database-name
2、说明:删除数据库
drop database dbname
3、说明:备份sql server
--- 创建 备份数据的 device
USE master
EXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1.d ......

SQL 中如何返回存储过程中的结果集

set @sql = 'select    *   from   OPENROWSET(''SQLOLEDB'',''SERVER='+@serverip+';uid=sa;pwd=sa;Database='+@databaseName+''',''SET   FMTONLY   OFF;set   nocount   on exec   procName '''''+@yqid+''''''' ) as   ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号