ASP.Net + SQL Server ´æ´¢¹ý³ÌʵÏÖ·ÖÒ³ÅÅÐò
ÎÊÌâÌá³ö:
ÔÚÓ¦ÓóÌÐòÖо³£ÐèÒª²éѯÊý¾Ý¡£µ±²éѯ½á¹ûÊý¾ÝÁ¿±È½Ï´óµÄʱºò£¬¼ìË÷½á¹û¡¢½çÃæÏÔʾ¶¼ÐèÒª»¨·Ñ´óÁ¿µÄʱ¼ä¡£ÎªÁ˱ÜÃâÕâ¸öÎÊÌ⣬Ӧ¸Ãÿ´ÎÖ»¼ìË÷²¿·ÖÊý¾Ý£¬Ò²¾ÍÊÇʹÓó£¼ûµÄ·ÖÒ³·½Ê½À´´¦Àí¡£·ÖÒ³µÄÎÊÌâÔÚasp.netÖкÃÏñ·Ç³£¼òµ¥£¬Ö»ÒªÔÚGridViewÖÐÆôÓ÷ÖÒ³¾Í¿ÉÒÔÁË¡£ÆôÓ÷ÖÒ³ºó£¬GridView¹ØÁªÊý¾ÝÔ´¿Ø¼þ£¬ÒÀ¾É»á¼ÓÔØËùÓеÄÊý¾Ý¡£Õâ¸ö½â¾ö·½·¨Ö»ÊÇ“ÑÚ¶úµÁÁå” £¬»áµ¼ÖÂÔÚ´óÊý¾ÝÁ¿µÄÇé¿öϵ¼Ö²éѯµÄЧÂʱäµÍ¡£
½â¾ö·½·¨£º
ʹÓÃGridViewµÄ×Ô¶¨Òå·ÖÒ³¹¦ÄÜ¡£Ê¹ÓÃ×Ô¶¨Òå·ÖÒ³¹¦ÄÜÐèҪʵÏÖÁ½¸öÂß¼£ºµÃµ½½á¹û¼¯µÄ×ÜÊý¡¢²éÕÒ×Ô¶¨·¶Î§µÄÊý¾Ý¡£
GridView ·ÖҳʵÏÖ£¬¿ÉÒԲο¼ Scott Mitchell ÎÄÕ Efficiently Paging Through Large Amounts of Data
±¾ÎÄ×éÒª½éÉÜÈçºÎÔÚʹÓÃSQL Server ʵÏÖÅÅÐò»ñÈ¡·ÖÒ³Êý¾Ý¡£
1¡¢Ê¹ÓÃ×Ó²éѯ+TOP¹Ø¼ü×Ö·½Ê½
if object_id('GetStudentPaged') is not null
drop procedure GetStudentPaged;
go
/************************************
* ÃèÊö£º ²éÕÒÖ¸¶¨·¶Î§µÄ¼Ç¼
* ²ÎÊý£º@startRow Æäʵ¼Ç¼
* @maximumRows ×î´óµÄ¼Ç¼ÊýÁ¿
*************************************/
create procedure GetStudentPaged
@startRow int,
@maxmimumRows int
as
select top (@maxmimumRows) * from Student
where StudentId NOT IN( select top(@startRow) StudentId from Student )
go
Èç¹ûÐèÒª°´Ìõ¼þ²éÕÒ£¬Ìõ¼þ¿ÉÄÜ»áÓÐËù²»Í¬¡£Í¨¹ý²ÎÊý½«whereÌõ¼þ´«Èëµ½´æ´¢¹ý³ÌÖС£ÓÉÓÚwhere×Ӿ䲻֧³ÖʹÓñäÁ¿£¬ËùÒÔÐèÒª½«ÔÚ´æ´¢¹ý³ÌÖÐ×éºÏSQLÓï¾ä£¬Í¨¹ý¶¯Ì¬SQL·½Ê½Ö´ÐС£
create procedure GetStudentPaged
@startRow int,
@maxmimumRows int,
@whereExpression nvarchar(512)
as
--´æ´¢SQLÓï¾äµÄ×Ö·û´®
declare @sql nvarchar(max)
set @sql = N'Select Top(' + ltrim(str(@maxmimumRows)) + N') * '
set @sql = @sql + N' from Student where '
--ÅжÏÊÇ·ñÓвéѯÌõ¼þ
if @whereExpression is not null and @whereExpression <> N''
begin
set @sql = @sql + @whereExpression + N' and '
end
set @sql = @sql + N'StudentId NOT IN ('
set @sql = @sql + N'Select Top('+ ltrim(str(@
Ïà¹ØÎĵµ£º
¾«ÃîSQLÓï¾äÊÕ¼¯
1¡¢ËµÃ÷£º´´½¨Êý¾Ý¿âCREATE DATABASE database-name 2¡¢ËµÃ÷£ºÉ¾³ýÊý¾Ý¿âdrop database dbn ......
ÎÒÃÇÕâÀï¶Ô SQL Server ×Ö·û´®º¯Êý½øÐзÖÃűðÀàµØÁгö£¬±ãÓÚ²éÔĺͼÇÒ䣬ÏàÐÅ´ó¼Ò¶¼ÔÚÆäËü·½ÃæÓиßÉîµÄ±à³Ì»ù´¡£¬´Ó×ÖÃæÉÏÀ´Ëµ´ó¼Ò¶¼ÖªµÀÕâЩº¯ÊýµÄÒâÒ壬¾Í²»¶ÔÕâЩº¯Êý×÷¹ý¶àµÄ½âÊÍÁË£¬Ö÷Ҫ̸Щ¾Ñ飬¾ßÌåÇë²Î¼ûÁª»ú´ÔÊé¡£
ASCII(character_expression) ·µ»Ø×î×ó¶Ë×Ö·ûµÄ ASCII ´úÂëÖµ
CHAR(integer_expression)
UNICO ......
ÆäʵÄã¿ÉÒÔʹÓÃÊÂÎñ´¦Àí
±È·½ËµÔÚÒ»¸ö×Ö¶ÎÀïÃæÌí¼ÓÒ»¸öboolean µÄ×ֶε±ÄãÒª´¦Àí¸Ã×ֶεÄʱºò¾Í True ÄÄô±ðµÄÈ˶¼²»¿ÉÒÔ½øÐвÙ×÷
¡¡Èç¹ûÊÇFalse ÄÄô¾Í¿ÉÒÔ½øÐвÙ×÷¡«¡«ºÇ¿É¡«¡«ÎÒÊÇÕâÑùµÄ
¡¡¡¡²»¹ýÄã¿ÉÒÔ¿´¿´¡¡
¡¡SQLËø»úÖÆ
¡¡¡¡ÒÔÏÂÊÇÎÒÕÒµÄһЩÁÏ¡¡Èç¹ûÒªÀí½âSQLËø»úÖÆ ×îºÃ°ÑÏÂÀ´¿´ÍêŶ
ĬÈϵÄÊÂÎñ¸ôÀë¼ ......
ÎÒÃÇÒª×öµ½²»µ«»áдSQL,»¹Òª×öµ½Ð´³öÐÔÄÜÓÅÁ¼µÄSQL,ÒÔÏÂΪ±ÊÕßѧϰ¡¢ÕªÂ¼¡¢²¢»ã×ܲ¿·Ö×ÊÁÏÓë´ó¼Ò·ÖÏí£¡
£¨1£© Ñ¡Ôñ×îÓÐЧÂʵıíÃû˳Ðò(Ö»ÔÚ»ùÓÚ¹æÔòµÄÓÅ»¯Æ÷ÖÐÓÐЧ)£º
ORACLEµÄ½âÎöÆ÷°´ÕÕ´ÓÓÒµ½×óµÄ˳Ðò´¦Àífrom×Ó¾äÖеıíÃû£¬from×Ó¾äÖÐдÔÚ×îºóµÄ±í(»ù´¡±í driving table)½«±»×îÏÈ´¦Àí£ ......