Ò׽ؽØͼÈí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

ÍòÄܵķÖÒ³sql(ת)

CREATE proc page
@RecordCount int output,
@QueryStr nvarchar(100)='table1',--±íÃû¡¢ÊÓͼÃû¡¢²éѯÓï¾ä
@PageSize int=20, --ÿҳµÄ´óС(ÐÐÊý)
@PageCurrent int=2, --ÒªÏÔʾµÄÒ³ ´Ó0¿ªÊ¼
@FdShow nvarchar (1000)='*', --ÒªÏÔʾµÄ×Ö¶ÎÁбí
@IdentityStr nvarchar (100)='id', --Ö÷¼ü
@WhereStr nvarchar (200)='1=1',
@FdOrder nvarchar(100)='desc' --ÅÅÐò Ö»ÄÜÈ¡desc»òÕßasc
as
declare
@sql nvarchar(2000)
set @sql = ''
if @WhereStr = ''
set @WhereStr = '1=1'
if @PageCurrent = 0 begin
set @sql = 'select top ' + cast(@PageSize as nvarchar(3)) + ' ' + @FdShow + ' from ' + @QueryStr + ' where ' + @WhereStr + ' order by ' + @IdentityStr + ' ' + @FdOrder
end
else begin
if upper(@FdOrder) = 'DESC' begin
set @sql = 'select top ' + cast(@PageSize as nvarchar(3)) + ' ' + @FdShow + ' from ' + @QueryStr + ' where ' + @WhereStr + ' and ' + @IdentityStr + '< ( select min(' + @IdentityStr + ') from (select top ' + cast(@PageSize*@PageCurrent as nvarchar(10)) + ' ' + @IdentityStr + ' from ' + @QueryStr + ' where ' + @WhereStr + ' order by ' + @IdentityStr + ' desc) as t) order by ' + @IdentityStr + ' desc'
end
else begin
set @sql = 'select top ' + cast(@PageSize as nvarchar(3)) + ' ' + @FdShow + ' from ' + @QueryStr + ' where ' + @WhereStr + ' and ' + @IdentityStr + '> ( select max(' + @IdentityStr + ') from (select top ' + cast(@PageSize*@PageCurrent as nvarchar(10)) + ' ' + @IdentityStr + ' from ' + @QueryStr + ' where ' + @WhereStr + ' order by ' + @IdentityStr + ' asc) as t) order by ' + @IdentityStr + ' asc'
end
end
--print @sql
execute(@sql)
if(@RecordCount is null or @RecordCount<=0)begin
declare @tsql nvarchar(200)
set @tsql=N'select @RecordCount = count(*) from ' + @QueryStr + ' where ' + @WhereStr
exec sp_executesql @tsql,N'@RecordCount int output',@RecordCount output
select @Recordcount
end
GO


Ïà¹ØÎĵµ£º

¸ß¼¶SQL 2

1 ÓÃUNIONÌæ»»OR (ÊÊÓÃÓÚË÷ÒýÁÐ)
ͨ³£Çé¿öÏÂ, ÓÃUNIONÌæ»»WHERE×Ó¾äÖеÄOR½«»áÆ𵽽ϺõÄЧ¹û. ¶ÔË÷ÒýÁÐʹÓÃOR½«Ôì³ÉÈ«±íɨÃè. ×¢Òâ, ÒÔÉϹæÔòÖ»Õë¶Ô¶à¸öË÷ÒýÁÐÓÐЧ.
Èç¹ûÓÐcolumnûÓб»Ë÷Òý, ²éѯЧÂÊ¿ÉÄÜ»áÒòΪÄãûÓÐÑ¡ÔñOR¶ø½µµÍ. ÔÚÏÂÃæµÄÀý×ÓÖÐ, LOC_ID ºÍREGIONÉ϶¼½¨ÓÐË÷Òý.
¸ßЧ: SELECT LOC_ID , LOC_DESC , ......

SQLÄ£ºý²éѯÓï¾äºÍEscapeתÒå×Ö·û

SQLÄ£ºý²éѯÓï¾äºÍEscapeתÒå×Ö·û(2008-09-22 14:26:01)
±êÇ©£ºfrom ×ªÒå×Ö·û sql µ¥ÒýºÅ Í¨Åä·û escape it  
ͨÅä·ûÃèÊöʾÀý%°üº¬Áã¸ö»ò¸ü¶à×Ö·ûµÄÈÎÒâ×Ö·û´®¡£WHERE title LIKE '%computer%' ½«²éÕÒ´¦ÓÚÊéÃûÈÎÒâλÖõİüº¬µ¥´Ê computer µ ......

Çë½ÌÒ»¸ösql²éѯÎÊÌâ ×Ó²éѯ=ÏÔʾµÚ¶þÌõÐÅÏ¢

create database test --½¨Á¢testÊý¾Ý¿â
use test
create table BONUS --½¨Á¢
(
ENAME NVARCHAR(10),
JOB NVARCHAR(9),
SAL FLOAT,
COMM FLOAT
)
create table DEPT --½¨Á¢²¿Ãűí
(
DEPTNO SMALLINT not null, --²¿ÃűàºÅ
DNAME NVARCHAR(14), --²¿ÃÅÃû
LOC NVARC ......

sql server ÅÅÐò

ÔÚsql Server ´Ó¿ª·¢»·¾³ÍùÉú²ú»·¾³²¿Êðʱ£¬ÒòΪ¿Í»§ÄÇÀïÓõÄÊÇÓ¢ÎÄ°æ±¾£¬ËùÒÔ´´½¨Êý¾Ý¿âÒÔºó£¬ÒªÉèÖÃÒ»ÏÂÊý¾Ý¿âÅÅÐò¹æÔò¡£
µ«ÊÇÔÚ´æ´¢¹ý³ÌÖУ¬ÓеijÌÐòԱʹÓÃÁËÁÙʱ±í£¬ÒòΪÁÙʱ±íÊÇ´æ´¢ÔÚϵͳÊý¾Ý¿âtempdbÖУ¬Èç¹ûϵͳÁÙʱÊý¾Ý¿âûÓнøÐÐÅÅÐò¹æÔòµÄÉèÖ㬳ÌÐò»¹Êdzö´í£¬½â¾ö°ì·¨¾ÍÊÇÉèÖÃÁÙʱÊý¾Ý¿âµÄÅÅÐò¹æÔò»òÕß´´½¨ÁÙÊ ......

My PL/SQL practice 8/2/10

SQLPlus  :http://www.orafaq.com/wiki/SQL*Plus_FAQ
http://download.oracle.com/docs/cd/B19306_01/appdev.102/b14261/sqloperations.htm
1. Transfer values from a sql scripts:
   CNT=`sqlplus -s username/password1@dbname @getUVQuery_NULLCNT`;
 
   Note : Remeber to use o ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ