Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö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


Ïà¹ØÎĵµ£º

SQL²éѯÿÐÐÖÐ×î´óÖµµÄ¼¼ÇÉ

--------------------------------------------------------------------------
--  Author : htl258(Tony)
--  Date   : 2010-04-23 08:08:36
--  Version:Microsoft SQL Server 2008 (RTM) - 10.0.1600.22 (Intel X86)
--          Jul  ......

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Óï¾ä»ñÈ¡±¾ÖÜ¡¢ÉÏÒ»ÖÜ¡¢±¾ÔÂÊý¾Ý


±¾ÖÜ
select * from tb where datediff(week , ʱ¼ä×Ö¶Î ,getdate()) = 0
ÉÏÖÜ
select * from tb where datediff(week , ʱ¼ä×Ö¶Î ,getdate()) = 1
ÏÂÖÜ
select * from tb where datediff(week , ʱ¼ä×Ö¶Î ,getdate()) = -1
------------------------------------------------------------------------------------ ......

11 SQLµ÷ÓŸÅÊö

11.3µ÷ÓųÌÐò/¼õÇá¸ºÔØ
Èç¹ûÆÚÍû¼õÇáÊý¾Ý¿â·þÎñÆ÷ÕûÌåµÄCPU»òÕßI/O¸ºÔØ£¬¿Éͨ¹ýÒÔϲ½ÖèÈ·¶¨×ÊÔ´Ãܼ¯Ð͵ÄSQLÓï¾ä£º
1.Ñ¡ÔñÔÚÓ¦ÓóÌÐòµÄ´¦Àí¸ß·åÆÚ¼ì²â¡£
2.ÔÚÒÔÉÏÖÜÆÚÄÚ£¬ÊÕ¼¯²Ù×÷ϵͳ¼°Oracleͳ¼ÆÐÅÏ¢¡£ÐèÒªÊÕ¼¯µÄOracleͳ¼ÆÐÅÏ¢ÖÁÉÙ°üÀ¨ÎļþµÄI/O£¨Í¨¹ýÊÓͼV$FILESTAT£©£¬ÏµÍ³Í³¼ÆÐÅÏ¢£¨V$SYSSTAT£©£¬ÒÔ¼°SQLͳ¼ÆÐÅÏ¢£ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ