sql´æ´¢¹ý³Ì·ÖÒ³
set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
go
ALTER PROCEDURE [dbo].[pagination]
@tblName varchar(255), -- ±íÃû
@strGetFields varchar(1000), -- ÐèÒª·µ»ØµÄÁÐ
@fldName varchar(255), -- ÅÅÐòµÄ×Ö¶ÎÃû
@PageSize int, -- Ò³³ß´ç
@PageIndex int, -- Ò³Âë
@OrderType bit, -- ÉèÖÃÅÅÐòÀàÐÍ, ·Ç 0 ÖµÔò½µÐò
@strWhere varchar(1500), -- ²éѯÌõ¼þ (×¢Òâ: ²»Òª¼Ó where)
@rowCount int output, --²éѯµ½µÄ¼Ç¼Êý
@pagecount int output
AS
declare @strSQL varchar(5000) -- Ö÷Óï¾ä
declare @strTmp varchar(110) -- ÁÙʱ±äÁ¿
declare @strOrder varchar(400) -- ÅÅÐòÀàÐÍ
declare @strCountTmp nvarchar(100) --¼Ç¼Êý
begin
if @strWhere !=''
set @strCountTmp = 'select @rowCount = count(*) from [' + @tblName + '] where '+@strWhere
else
set @strCountTmp = 'select @rowCount = rowCount_tmp from tmp where (table_tmp = ''' + @tblName +''')'
exec sp_executesql @strCountTmp,N'@rowCount int out',@rowCount out --Êä³ö×ܼǼÊý
declare @totalpage int
set @pagecount=@rowCount/@PageSize
if @OrderType != 0
begin
set @strTmp = '<(select min'
set @strOrder = ' order by ' + @fldName +' desc'
--Èç¹û@OrderType²»ÊÇ0£¬¾ÍÖ´ÐнµÐò£¬Õâ¾äºÜÖØÒª£¡
end
else
begin
set @strTmp = '>(select max'
set @strOrder = ' order by ' + @fldName +' asc'
end
if @PageIndex = 1
begin
if @strWhere != ''
set @strSQL = 'select top ' + str(@PageSize) +' '+@strGetFields+ ' from [' + @tblName + '] where ' + @strWhere + ' ' + @strOrder
else
set @strSQL = 'select top ' + str(@PageSize) +' '+@strGetFields+ ' from ['+ @tblName + '] '+ @strOrder
--Èç¹ûÊǵÚÒ»Ò³¾ÍÖ´ÐÐÒÔÉÏ´úÂ룬ÕâÑù»á¼Ó¿ìÖ´ÐÐËÙ¶È
end
else
begin
--ÒÔÏ´úÂ븳ÓèÁË@strSQLÒÔÕæÕýÖ´ÐеÄSQL´úÂë
set @strSQL = 'select top ' + str(@PageSize) +' '+@strGetFields+ ' from ['
+ @tblName + '] where [' + @fldName + ']' + @strTmp + '(['+ @fldName + ']) from (select top ' + str((@PageIndex-1)*@PageSize) + ' ['+ @fldName + '] from [' + @tblName + ']' + @strOrder + ') as tblTmp)'+ @strOrder
if @strWhere != ''
set @str
Ïà¹ØÎĵµ£º
¡¡¡¡µ±Ö´ÐÐÒ»ÌõDMLÓï¾äºó£¬DMLÓï¾äµÄ½á¹û±£´æÔÚËĸöÓαêÊôÐÔÖУ¬ÕâЩÊôÐÔÓÃÓÚ¿ØÖƳÌÐòÁ÷³Ì»òÕßÁ˽â³ÌÐòµÄ״̬¡£µ±ÔËÐÐDMLÓï¾äʱ£¬PL/SQL´ò¿ªÒ»¸öÄÚ½¨Óα겢´¦Àí½á¹û£¬ÓαêÊÇά»¤²éѯ½á¹ûµÄÄÚ´æÖеÄÒ»¸öÇøÓò£¬ÓαêÔÚÔËÐÐDMLÓï¾äʱ´ò¿ª£¬Íê³Éºó¹Ø±Õ¡£ÒþʽÓαêֻʹÓÃSQL%FOUND,SQL%NOTFOUND,SQL%ROWCOUNTÈý¸öÊôÐÔ.SQL%FOUND,SQ ......
ÒÔÏÂ˵Ã÷¾ùÕë¶ÔÆóÒµ°æ»òÕß¿ª·¢°æ£»
1.¿ªÆôsql server ʵÀýµÄÔ¶³ÌÁ¬½Ó£»
“¿ªÊ¼”-->“³ÌÐò”-->“Microsoft SQL Server 2005”-->“ÅäÖù¤¾ß”-->“SQL Server ÍâΧӦÓÃÅäÖÃÆ÷”-->“·þÎñºÍÁ¬½ÓµÄÍâΧӦÓÃÅäÖÃÆ÷”--> ......
Create PROCEDURE [dbo].[ChangeObjectOwner]
@OldOwner as NVARCHAR(128),
@NewOwner as NVARCHAR(128)
AS
DECLARE @Name as NVARCHAR(128)
DECLARE @Owner as NVARCHAR(128)
DECLARE @OwnerName as NVARCHAR(128)
DECLARE curObject CURSOR FOR
select 'Name' = name,
'Owner'&n ......
±ê×¼µÄ SQL µÄ½âÎö˳ÐòΪ:
(
1
).
from
×Ó¾ä, ×é×°À´×Ô²»Í¬Êý¾ÝÔ´µÄÊý¾Ý
(
2
).
WHERE
×Ó¾ä, »ùÓÚÖ¸¶¨µÄÌõ¼þ¶Ô¼Ç¼½øÐÐɸѡ
(
3
).
GROUP
BY
×Ó¾ä, ½«Êý¾Ý»®·ÖΪ¶à¸ö·Ö×é
(
4
).ʹÓþۺϺ¯Êý½øÐмÆËã
(
5
).ʹÓÃ
HAVING
×Ó¾äɸѡ·Ö×é
(
6
).¼ÆËãËùÓеıí´ïʽ
......
1. ¼òÊö private¡¢ protected¡¢ public¡¢ internal ÐÞÊηûµÄ·ÃÎÊȨÏÞ¡£
´ð . private : ˽ÓгÉÔ±, ÔÚÀàµÄÄÚ²¿²Å¿ÉÒÔ·ÃÎÊ¡£
protected : ±£»¤³ÉÔ±£¬¸ÃÀàÄÚ²¿ºÍ¼Ì³ÐÀàÖпÉÒÔ·ÃÎÊ¡£
public : ¹«¹²³ÉÔ±£¬ÍêÈ«¹«¿ª£¬Ã»ÓзÃÎÊÏÞÖÆ¡£
internal: ÔÚÍ¬Ò ......