Table: T_1, T_2, T_3
T_1 T_2 T_3
×Ö¶Î: T_CD_1(INT) ,T_NUM_1(INT),T_KB_1(INT) T_CD_2(INT) ,T_NUM_2(INT) & ......
¶ÔÓÚWebÓ¦ÓÃÀ´Ëµ£¬×¢Éäʽ¹¥»÷ÓÉÀ´ÒѾ㬹¥»÷·½Ê½Ò²Î廨°ËÃÅ£¬³£¼ûµÄ¹¥»÷·½Ê½ÓÐSQL×¢Éä¡¢ÃüÁî×¢ÉäÒÔ¼°Ð½ü²Å³öÏÖµÄXPath×¢ÉäµÈµÈ¡£±¾ÎĽ«ÒÔSQL×¢ÉäΪÀý£¬ÔÚÔ´Âë¼¶¶ÔÆä¹¥»÷ÔÀí½øÐÐÉîÈëµÄ½²½â¡£
Ò»¡¢×¢Éäʽ¹¥»÷µÄÔÀí
×¢Éäʽ¹¥»÷µÄ¸ùÔ´ÔÚÓÚ£¬³ÌÐòÃüÁîºÍÓû§Êý¾Ý£¨¼´Óû§ÊäÈ룩֮¼äûÓÐ×öµ½ãþμ·ÖÃ÷¡£ÕâʹµÃ¹¥»÷ÕßÓлú»á½«³ÌÐòÃüÁîµ±×÷Óû§ÊäÈëµÄÊý¾ÝÌá½»¸øWe³ÌÐò£¬ÒÔ·¢ºÅÊ©ÁΪËùÓûΪ¡£
ΪÁË·¢¶¯×¢Éä¹¥»÷£¬¹¥»÷ÕßÐèÒªÔÚ³£¹æÊäÈëÖлìÈ뽫±»½âÊÍΪÃüÁîµÄ“Êý¾Ý”£¬ÒªÏë³É¹¦£¬±ØÐëÒª×öÈý¼þÊÂÇ飺
1.È·¶¨WebÓ¦ÓóÌÐòËùʹÓõļ¼Êõ
×¢Éäʽ¹¥»÷¶Ô³ÌÐòÉè¼ÆÓïÑÔ»òÕßÓ²¼þ¹ØÏµÃÜÇУ¬µ«ÊÇÕâЩ¿ÉÒÔͨ¹ýÊʵ±µÄ²Èµã»òÕßË÷ÐÔ½«ËùÓг£¼ûµÄ×¢Éäʽ¹¥»÷¶¼°á³öÀ´Öð¸öÊÔһϾÍÖªµÀÁË¡£ÎªÁËÈ·¶¨Ëù²ÉÓõļ¼Êõ£¬¹¥»÷Õß¿ÉÒÔ¿¼²ìWebÒ³ÃæµÄÒ³½Å£¬²é¿´´íÎóÒ³Ãæ£¬¼ì²éÒ³ÃæÔ´´úÂ룬»òÕßʹÓÃÖîÈçNessusµÈ¹¤¾ßÀ´½øÐдÌ̽¡£
2.È·¶¨ËùÓпÉÄܵÄÊäÈ뷽ʽ
WebÓ¦ÓõÄÓû§ÊäÈ뷽ʽ±È½Ï¶à£¬ÆäÖÐһЩÓû§ÊäÈ뷽ʽÊǺÜÃ÷ÏԵģ¬ÈçHTML±íµ¥£»ÁíÍ⣬¹¥»÷Õß¿ÉÒÔͨ¹ýÒþ²ØµÄHTML±íµ¥ÊäÈë¡¢HTTPÍ·²¿¡¢cookies¡¢ÉõÖÁ¶ÔÓû§²»¿É¼ûµÄºó¶ËAJAXÇëÇóÀ´¸úWebÓ¦ÓýøÐн»»¥¡£Ò»°ãÀ´Ëµ£¬ËùÓÐHTTPµÄGETºÍPOST¶¼Ó¦µ±× ......
´¥·¢Æ÷ÊÇÒ»ÖÖÌØÊâµÄ´æ´¢¹ý³Ì£¬ÔÚÓû§ÊÔͼ¶ÔÖ¸¶¨µÄ±íÖ´ÐÐÖ¸¶¨µÄÊý¾ÝÐÞ¸ÄÓï¾äʱ×Ô¶¯Ö´ÐС£Microsoft® SQL Server™ ÔÊÐíΪÈκθø¶¨µÄ INSERT¡¢UPDATE »ò DELETE Óï¾ä´´½¨¶à¸ö´¥·¢Æ÷¡£
1¡¢INSERT´¥·¢Æ÷£º¿ÉÒÔ¶¨ÒåÒ»¸öÎÞÂÛºÎʱÓÃINSERTÓï¾äÏò±íÖвåÈëÊý¾Ýʱ¶¼»áÖ´ÐеĴ¥·¢Æ÷¡£
µ±´¥·¢INSERT´¥·¢Æ÷ʱ£¬ÐµÄÊý¾ÝÐоͻᱻ²åÈëµ½´¥·¢Æ÷±íºÍinserted±íÖС£inserted±íÊÇÒ»¸öÂß¼±í£¬Ëü°üº¬ÁËÒѾ²åÈëµÄÊý¾ÝÐеÄÒ»¸ö¸±±¾¡£inserted±í°üº¬ÁËINSERTÓï¾äÖÐÒѼǼµÄ²åÈ붯×÷¡£inserted±í»¹ÔÊÐíÒýÓÃÓɳõʼ»¯INSERTÓï¾ä¶ø²úÉúµÄÈÕÖ¾Êý¾Ý¡£´¥·¢Æ÷ͨ¹ý¼ì²éinserted±íÀ´È·¶¨ÊÇ·ñÖ´Ðд¥·¢Æ÷¶¯×÷»òÈçºÎÖ´ÐÐËü¡£inserted±íÖеÄÐÐ×ÜÊÇ´¥·¢Æ÷±íÖÐÒ»Ðлò¶àÐеĸ±±¾¡£
ÈÕÖ¾¼Ç¼ÁËËùÓÐÐÞ¸ÄÊý¾ÝµÄ¶¯×÷(INSERT¡¢UPDATEºÍDELETEÓï¾ä)£¬µ«ÔÚÊÂÎñÈÕÖ¾ÖеÄÐÅÏ¢ÊDz»¿É¶ÁµÄ¡£È»¶ø£¬inserted±íÔÊÐíÄãÒýÓÃÓÉINSERTÓï¾äÒýÆðµÄÈÕÖ¾±ä»¯£¬ÕâÑù¾Í¿ÉÒÔ½«²åÈëÊý¾ÝÓë·¢ÉúµÄ±ä»¯½øÐбȽϣ¬À´ÑéÖ¤ËüÃÇ»ò²ÉÈ¡½øÒ»²½µÄ¶¯×÷¡£Ò²¿ÉÒÔÖ±½ÓÒýÓòåÈëµÄÊý¾Ý£¬¶ø²»±Ø½«ËüÃÇ´æ´¢µ½±äÁ¿ÖС£
¼òµ ......
1 TOP
ÕâÊÇÒ»¸ö´ó¼Ò¾³£Îʵ½µÄÎÊÌ⣬ÀýÈçÔÚSQLSERVERÖпÉÒÔʹÓÃÈçÏÂÓï¾äÀ´È¡µÃ¼Ç¼¼¯ÖеÄǰʮÌõ¼Ç¼£º
SELECT TOP 10 * from [index] ORDER BY indexid DESC;
µ«ÊÇÕâÌõSQLÓï¾äÔÚSQLiteÖÐÊÇÎÞ·¨Ö´Ðеģ¬Ó¦¸Ã¸ÄΪ£º
SELECT * from [index] ORDER BY indexid DESC limit 0,10;
ÆäÖÐlimit 0,10±íʾ´ÓµÚ0Ìõ¼Ç¼¿ªÊ¼£¬ÍùºóÒ»¹²¶ÁÈ¡10Ìõ
2 ´´½¨ÊÓͼ£¨Create View£©
SQLiteÔÚ´´½¨¶à±íÊÓͼµÄʱºòÓÐÒ»¸öBUG£¬ÎÊÌâÈçÏ£º
CREATE VIEW watch_single AS SELECT DISTINCTwatch_item.[watchid],watch_item.[itemid] from watch_item;
ÉÏÃæÕâÌõSQLÓï¾äÖ´Ðкó»áÏÔʾ³É¹¦£¬µ«ÊÇʵ¼ÊÉϳýÁË
SELECT COUNT(*) from [watch_single ] WHERE watch_ single.watchid = 1;
ÄÜÖ´ÐÐÖ®ÍâÊÇÎÞ·¨Ö´ÐÐÆäËûÈκÎÓï¾äµÄ¡£ÆäÔÒòÔÚÓÚ½¨Á¢ÊÓͼµÄʱºòÖ¸¶¨ÁË×Ö¶ÎËùÔڵıíÃû£¬¶øSQLite²¢²»ÄÜÕýÈ·µØÊ¶±ðËü¡£ËùÒÔÉÏÃæµÄ´´½¨Óï¾äÒª¸ÄΪ£º
CREATE VIEW watch_single AS SELECT DISTINCT [watchid],[itemid] from watch_item;
µ«ÊÇËæÖ®¶øÀ´µÄÎÊÌâÊÇÈç¹ûÊǶà±íµÄÊÓͼ£¬ÇÒ±í¼äÓÐÖØÃû×ֶεÄʱºò¸ÃÔõô°ì£¿
3 COUNT£¨DISTINCT column£©
SQLiteÔÚÖ´ÐÐÈçÏÂÓï¾äµÄʱºò»á±¨´í£º
SELECT COUNT(DISTINCT watchid) fr ......
1 TOP
ÕâÊÇÒ»¸ö´ó¼Ò¾³£Îʵ½µÄÎÊÌ⣬ÀýÈçÔÚSQLSERVERÖпÉÒÔʹÓÃÈçÏÂÓï¾äÀ´È¡µÃ¼Ç¼¼¯ÖеÄǰʮÌõ¼Ç¼£º
SELECT TOP 10 * from [index] ORDER BY indexid DESC;
µ«ÊÇÕâÌõSQLÓï¾äÔÚSQLiteÖÐÊÇÎÞ·¨Ö´Ðеģ¬Ó¦¸Ã¸ÄΪ£º
SELECT * from [index] ORDER BY indexid DESC limit 0,10;
ÆäÖÐlimit 0,10±íʾ´ÓµÚ0Ìõ¼Ç¼¿ªÊ¼£¬ÍùºóÒ»¹²¶ÁÈ¡10Ìõ
2 ´´½¨ÊÓͼ£¨Create View£©
SQLiteÔÚ´´½¨¶à±íÊÓͼµÄʱºòÓÐÒ»¸öBUG£¬ÎÊÌâÈçÏ£º
CREATE VIEW watch_single AS SELECT DISTINCTwatch_item.[watchid],watch_item.[itemid] from watch_item;
ÉÏÃæÕâÌõSQLÓï¾äÖ´Ðкó»áÏÔʾ³É¹¦£¬µ«ÊÇʵ¼ÊÉϳýÁË
SELECT COUNT(*) from [watch_single ] WHERE watch_ single.watchid = 1;
ÄÜÖ´ÐÐÖ®ÍâÊÇÎÞ·¨Ö´ÐÐÆäËûÈκÎÓï¾äµÄ¡£ÆäÔÒòÔÚÓÚ½¨Á¢ÊÓͼµÄʱºòÖ¸¶¨ÁË×Ö¶ÎËùÔڵıíÃû£¬¶øSQLite²¢²»ÄÜÕýÈ·µØÊ¶±ðËü¡£ËùÒÔÉÏÃæµÄ´´½¨Óï¾äÒª¸ÄΪ£º
CREATE VIEW watch_single AS SELECT DISTINCT [watchid],[itemid] from watch_item;
µ«ÊÇËæÖ®¶øÀ´µÄÎÊÌâÊÇÈç¹ûÊǶà±íµÄÊÓͼ£¬ÇÒ±í¼äÓÐÖØÃû×ֶεÄʱºò¸ÃÔõô°ì£¿
3 COUNT£¨DISTINCT column£©
SQLiteÔÚÖ´ÐÐÈçÏÂÓï¾äµÄʱºò»á±¨´í£º
SELECT COUNT(DISTINCT watchid) fr ......
ÔÚÍøÉÏÕÒµÄÒ»¸ö·½·¨£¬¾ÍÒòΪһ¸öhostNameûÅäÖöԣ¬º¦µÃÎÒ»¨ÁË3¸öСʱ²Å¸ã¶¨
²âÊÔ»·¾³:
oracle·þÎñÆ÷: windowsXPϵͳ£¬ oracle9.2.0.7£¬Ö÷»úÃû£ºoracleHost
sqlserver·þÎñÆ÷:windows2003 r2ϵͳ£¬sqlserver 2000,Ö÷»úÃû£ºsqlHost
Ä¿µÄ£ºÔÚOracleÊý¾ÝÖзÃÎÊsqlserverÖеÄNorthwindÊý¾Ý¿â
1¡¢ÔÚ°²×°ORACLE9iʱ, Ҫѡ͸Ã÷Íø¹Ø(Oracle Transparent Gateway)Àï·ÃÎÊMicrosoft SQL ServerÊý¾Ý¿â
Èç¹ûûѡÔñ£¬Óð²×°ÅÌÖØÐÂ×°Ò»ÏÂÕâ¸ö×é¼þ£¬ÎÒµÄûװ£¬ÎÒ¾ÍÓÃoracle9.2.0.4µÄÔÅÌÖØÐÂ×°µÄ£¬È»ºóÔÚÓÃoracle9.2.0.7µÄ²¹¶¡°üÔÙÉý¼¶Ò»Ï£¬²»È»Óò»ÁË£¬ÎÒ¾ÍÒòÕâ¸ö£¬ºÄ·ÑÁË1¸öСʱÕÒÔÒò¡£
°²×°Ê±ÓиöÈÃÄãÑ¡ÔñSQL Server·þÎñÆ÷µÄ£¬Äã¿ÉÒÔ°´ÕæÊµµÄÅäÖ㬺óÃæÎÒÖ÷Òª½²×Ô¼ºÊÖ¹¤ÅäÖá£
°²×°ºÃºó£¬»áÔÚ$ORACLE9I_HOME\tg4msql\admin\ÏÂÓм¸¸öÅäÖõÄsample,¿ÉÒÔ¿´¿´£¬ÀïÃæÓиöpdf°ïÖú
ÏÂÃæÊÇÎÒµÄÅäÖÃ
¡¡¡¡$ORACLE9I_HOME\tg4msql\admin\ ÏÂÐÂдinitnorthwind.oraÅäÖÃÎļþ.
¡¡¡¡ÄÚÈÝÈçÏÂ:
¡¡¡¡HS_FDS_CONNECT_INFO="SERVER= sqlHost;DATABASE=Northwind"
¡¡¡¡HS_DB_NAME=Northwind
¡ ......
ÔÚÍøÉÏÕÒµÄÒ»¸ö·½·¨£¬¾ÍÒòΪһ¸öhostNameûÅäÖöԣ¬º¦µÃÎÒ»¨ÁË3¸öСʱ²Å¸ã¶¨
²âÊÔ»·¾³:
oracle·þÎñÆ÷: windowsXPϵͳ£¬ oracle9.2.0.7£¬Ö÷»úÃû£ºoracleHost
sqlserver·þÎñÆ÷:windows2003 r2ϵͳ£¬sqlserver 2000,Ö÷»úÃû£ºsqlHost
Ä¿µÄ£ºÔÚOracleÊý¾ÝÖзÃÎÊsqlserverÖеÄNorthwindÊý¾Ý¿â
1¡¢ÔÚ°²×°ORACLE9iʱ, Ҫѡ͸Ã÷Íø¹Ø(Oracle Transparent Gateway)Àï·ÃÎÊMicrosoft SQL ServerÊý¾Ý¿â
Èç¹ûûѡÔñ£¬Óð²×°ÅÌÖØÐÂ×°Ò»ÏÂÕâ¸ö×é¼þ£¬ÎÒµÄûװ£¬ÎÒ¾ÍÓÃoracle9.2.0.4µÄÔÅÌÖØÐÂ×°µÄ£¬È»ºóÔÚÓÃoracle9.2.0.7µÄ²¹¶¡°üÔÙÉý¼¶Ò»Ï£¬²»È»Óò»ÁË£¬ÎÒ¾ÍÒòÕâ¸ö£¬ºÄ·ÑÁË1¸öСʱÕÒÔÒò¡£
°²×°Ê±ÓиöÈÃÄãÑ¡ÔñSQL Server·þÎñÆ÷µÄ£¬Äã¿ÉÒÔ°´ÕæÊµµÄÅäÖ㬺óÃæÎÒÖ÷Òª½²×Ô¼ºÊÖ¹¤ÅäÖá£
°²×°ºÃºó£¬»áÔÚ$ORACLE9I_HOME\tg4msql\admin\ÏÂÓм¸¸öÅäÖõÄsample,¿ÉÒÔ¿´¿´£¬ÀïÃæÓиöpdf°ïÖú
ÏÂÃæÊÇÎÒµÄÅäÖÃ
¡¡¡¡$ORACLE9I_HOME\tg4msql\admin\ ÏÂÐÂдinitnorthwind.oraÅäÖÃÎļþ.
¡¡¡¡ÄÚÈÝÈçÏÂ:
¡¡¡¡HS_FDS_CONNECT_INFO="SERVER= sqlHost;DATABASE=Northwind"
¡¡¡¡HS_DB_NAME=Northwind
¡ ......
/*------------------------------------------------------------------
-- Author : htl258(Tony)
-- Date : 2010-04-15 22:07:01
-- Version: Microsoft SQL Server 2008 (RTM) - 10.0.1600.22 (Intel X86)
Jul 9 2008 14:43:34
Copyright (c) 1988-2008 Microsoft Corporation
Developer Edition on Windows NT 5.1 <X86> (Build 2600: Service Pack 3)
------------------------------------------------------------------*/
--±¸·Ý
BACKUP DATABASE mydb
TO DISK='c:\olddb.bak'
WITH INIT
--ΪÁ˲âÊÔ£¬°Ñ±¸·ÝºÃµÄÎļþ´ÓCÅÌÒÆ¶¯µ½ D:\tempdb Îļþ¼Ð
--»¹Ô
--1.ÓôËÓï¾äµÃµ½±¸·ÝÎļþµÄÂß¼ÎļþÃû£º
RESTORE FILELISTONLY from DISK = N'd:\tempdb\olddb.bak' --±¸·ÝÎļþ´æ·Å·¾¶
--¿´LogicalName£¬Ò»°ã»áÓÐÁ½¸öÎļþ,È磺
--olddb --Ö÷Âß¼ÎļþÃû³Æ
--olddb_log --ÈÕÖ¾Âß¼ÎļþÃû³Æ
--2.ÓÃÒÔÏÂÓï¾ä»¹ÔÊý¾Ý¿â
RESTORE DATABASE new_db
from DISK = 'd:\tempdb\olddb.bak'
WITH MOVE ......