Éî¶È¶Ô±ÈOracleÓëSQL Server——µÚ¶þ²¿·Ö
Êý¾Ý¿âʵÀý½á¹¹ ÊÂÎñÒ»ÖÂÐÔ(Transactional Consistency)ºÍ»ùÓÚʱ¼äµãµÄ»Ö¸´(Point-in-time Recovery) ϵͳԪÊý¾Ý
topÊý¾Ý¿âʵÀý½á¹¹
µ±OracleʵÀýÆô¶¯Ö®ºó£¬Ëù¿´µ½µÄ¾ÍÊÇÔÚ·þÎñÆ÷ÄÚ´æÉϵÄÒ»¸ö¸ö²»Í¬ÄÚ´æ¿é¼ÓÉϲúÉúµÄÓëÕâЩÄÚ´æ½»»¥µÄºǫ́½ø³Ì¡£OracleÎĵµ½«ÕâЩÄÚ´æ½á¹¹ºÍ½ø³ÌÊյĺÜÏêϸ¡£
ÓÉOracleʵÀýËùÕ¼ÓõÄÄÚ´æ¿é³ÉΪSGA£¨System Global Area£©£¬ËüµÄ´óС¿ÉÒÔͨ¹ýµ÷ÕûOracle³õʼ»¯²ÎÊý£¨initialisation parameter£©½øÐÐÐ޸ģ¬ÔÚSGAÀï±ßÖÁÉٻᴴ½¨3¸ö²»Í¬µÄÇøÓò£¬ËüÃÇ·Ö±ðÊÇ£º
Êý¾Ý¿é»º´æÇø£¨Database Buffer Cache£©ÕâÀﻺ´æµÄÊÇÊý¾Ý¿é¡£ºÍSQL ServerÒ»Ñù£¬Óû§²»»áÖ±½ÓµÄ·ÃÎÊÊý¾ÝÎļþÉϵÄÊý¾Ý£ºµ±¶ÁÈ¡Êý¾Ýʱ£¬Ïà¹ØµÄÊý¾Ý¿é»á´ÓÊý¾ÝÎļþÖп½±´µ½ÄÚ´æÖУ»ÐÞ¸ÄÊý¾ÝʱҲÊÇÐÞ¸ÄÄÚ´æÖеÄÊý¾Ý£¬È»ºóÔÙÓɵ¥¶ÀµÄ½ø³Ì½«Êý¾Ý»º´æÇøÖб»Ð޸ĵÄÊý¾ÝдÈëµ½Êý¾Ý¿âÖС£ÖØ×öÈÕÖ¾»º´æ£¨Redo Log Buffer£©SGAÖеÄÕâ¸öÇøÓòÁ¬ÐøµÄ¼Ç¼×ÅÊý¾Ý»º´æÇøÊý¾ÝÐ޸ĵļǼ£¬ÖØ×öÈÕÖ¾»º´æÖеÄÄÚÈݻᱻдÈëµ½ÔÚÏßÈÕÖ¾ÎļþÖÐÈ¥¡£¹²Ïí³Ø(Shared Pool£©SGAÖÐÓÐÒ»´ó¿éµÄÄÚ´æÓÃ×÷¹²Ïí³Ø£¬¹²Ïí³ØµÈ¼ÛÓÚSQL ServerÖеÄÖ´Ðлº´æ£¨Procedure Cache£©¡£ËüµÄÖ÷Òª×÷ÓþÍÊÇ»º´æÊý¾Ý¿âÖÐ×î½üÖ´ÐйýµÄSQLÓï¾ä¡£¹²Ïí³ØÓÉÏÂÃæµÄÄ£¿é×é³É£º Êý¾Ý×ֵ仺´æ£¨Dictionary Cache£©Êý¾Ý×ֵ仺´æ»º´æÁËOracle×î½üʹÓõÄÊý¾Ý×ÖµäÐÅÏ¢¡£¿â»º´æ£¨Library Cache£©Õâ¸öÇøÓò°üº¬ÁË×î½üÖ´ÐеÄSQLºÍPL/SQLÓï¾äºÍ¶ÔÓ¦µÄÖ´Ðмƻ®¡£SQLÇø»¹ÄܽøÒ»²½·Ö³É¹²ÏíÇøºÍ˽ÓÐÇø£º¹²ÏíSQLÇø±£´æµÄÓï¾ä¿ÉÒÔÓɶà¸öÓû§Ê¹ÓöøË½ÓÐÇø±£´æµÄÔòÊǸú¸÷¸öÁ¬½Ó¶ÔÓ¦µÄ°ó¶¨±äÁ¿µÄÐÅÏ¢¡£PL/SQLÊÇOracle¶ÔÓÚÐÐÒµ±ê×¼SQLµÄ³ÌÐòÀ©Õ¹£¬µ±PL/SQL³ÌÐòÖ´ÐÐʱ£¬ËüµÄ´úÂë»á¿½±´µ½¿â»º´æÖеĹ²ÏíPL/SQLÇøÖС£³ýÁË»º´æÖ´ÐдúÂëºÍÖ´Ðмƻ®Í⣬¿â»º´æ»¹°üº¬Ëø¡¢·§ÒÔ¼°×Ö·û¼¯µÈÐÅÏ¢¡£
¸ù¾ÝÄãËùʹÓõÄ×é¼þµÄ²»Ò»Ñù£¬OracleµÄSGAÖÐÒ²¿ÉÄÜ´æÔÚÆäËüһЩ¿ÉÑ¡µÄÄÚ´æÇøÓò¡£ÔÚOracleÖÐʹÓÃJavaÓ¦ÓÃʱҪʹÓõ½Java³Ø£¨Java Pool£©£¬OracleÄÚÖõı¸·Ý»Ö¸´¹¤¾ßRMAN£¨Recovery Manager£©ÒªÓõ½´ó³Ø£¨Large Pool£©£¬µ±Ê¹ÓÃOracle¸ß¼¶¶ÓÁлúÖÆÊ±ÒªÓõ½Á÷³Ø£¨Steams Pool£©¡£
ÉÏÃæ½éÉܵĸ÷¸öÄÚ´æÇøÓò¶¼ÊÇÊôÓÚSGAµÄÒ»²¿·Ö£¬ËüÃÇÊÇͨ¹ýÒ»ÐòÁеĽø³Ì£¨process£©À´ºÍÊý¾Ý¿â½øÐн»»¥¡£ÏÂÃæ¾Í¿ªÊ¼½éÉܰüÀ¨Óû§½ø³ÌºÍ·þÎñÆ÷½ø³ÌÔÚÄÚµÄOracle½ø³ÌÁË¡£
µ±Óû§»òÕßÊÇÓ¦ÓÃÁ¬½Óµ½OracleÊý¾Ý¿âʱ¾Í»á²úÉúÒ»¸öÓû§½ø³Ì£¨user process£©¡£ÔÚÒ»¸öÁ½²ãµÄϵͳ¼Ü¹¹ÖУ¬Óû§
Ïà¹ØÎĵµ£º
ÊÓͼ
SET¡¡NOCOUNT ON;
SET Northwind;
GO
IF OBJECT_ID('dbo.ViewName') IS NOT NULL
DROP VIEW dbo.ViewName;
GO
CREATE VIEW dbo.Viewname
AS
SELECT * from customer AS C
WHERE EXISTS
(SELECT * from dbo.Orders AS O
WHERE O.CustomerI ......
SQL³£Óú¯Êý£º
1. ASCII()£º·µ»Ø×Ö·û´®×î×ó¶Ë×Ö·ûµÄASCIIÂë¡£
2. CHAR()£º½«ASCIIת»»³É×Ö·û¡£(0~255)
3. LOWER()ºÍUPPER()¡£
4. STR()£º°ÑÊýÖµÐÍÊý¾Ýת»»Îª×Ö·ûÐÍÊý¾Ý
SRT(<float_expression>[,length[,<decimal>]])
LTRIM()°Ñ×Ö·û´®Í·²¿¿Õ¸ñÈ¥µô£¬RTRIM()°Ñ×Ö·û´®Î²¿Õ¸ñÈ¥µô¡£
È¡× ......
Oracle³£Ó÷ÖÎöº¯Êý
ROW_NUMBER
·µ»ØÓÐÐò×éÖÐÒ»ÐÐµÄÆ«ÒÆÁ¿£¬´Ó¶ø¿ÉÓÃÓÚ°´Ìض¨±ê×¼ÅÅÐòµÄÐкÅ
row_number() over(partition by ... order by ...)
RANK
¸ù¾ÝORDER BY×Ó¾äÖбí´ïʽµÄÖµ£¬´Ó²éѯ·µ»ØµÄÿһÐУ¬¼ÆËãËüÃÇÓëÆäËüÐеÄÏà¶ÔλÖá£×éÄÚµÄÊý¾Ý°´ORDER BY×Ó¾äÅÅÐò£¬È»ºó¸øÃ¿Ò»Ðи³Ò»¸öºÅ£¬´Ó¶øÐγÉÒ»¸öÐòÁУ¬¸ÃÐòÁ ......
ÔÚ°²×°Visual Studio+SQL ServerµÄ¿ª·¢»·¾³µÄʱºòÍùÍù»áÓкܶà´íÎ󣬯äÖÐ×îÂé·³µÄÒ»Ìõ¾ÍËÀ°²×°Íê³ÉÖ®ºóûÓÐÊý¾Ý¿â¹ÜÀí¹¤¾ß£¬¼´Ã»ÓÐSQL Server 2005 Management Studio¡£³öÏÖÕâÑùµÄÎÊÌâÖ÷ÒªÓÐÁ½¸öÔÒò£¬Ò»ÊÇϵͳÒѾ´æÔÚÆäËû°æ±¾µÄSQLÊý¾Ý¿â»òÕßExpress°æ±¾£¬¶þÊǰ²×°»·¾³µÄʱºòÏñÎÒÒ»ÑùÏȰ²×°ÁËVisual Studio 2005/2008£¬È» ......
²Ù×÷ϵͳµÄÖ§³Ö °æ±¾ºÍ·¢Ðаæ ʵÀý¡¢Êý¾Ý¿âºÍ±í¿Õ¼ä ʵÀýÃûºÍSID ϵͳÊý¾Ý¿âºÍϵͳ±í¿Õ¼ä
Ò»°ãµÄ¹«Ë¾Í¨³£»áÔÚËûÃǵÄÐÅϢϵͳ¼Ü¹¹ÖÐÒýÈë¶àÖÖÊý¾Ý¿âƽ̨£¬Í¬Ê±ÒýÈëÈýµ½ËÄÖÖ²»Í¬µÄRDBMS½â¾ö·½°¸µÄÖдóÐ͹«Ë¾Ò²²¢²»ÉÙ¼û£¬µ±È»ÕâЩ¹«Ë¾ÀïÃæµÄDBAÃÇͨ³£Ò²ÐèҪͬʱӵÓйÜÀí¶àÖÖ²»Í¬Æ½Ì¨µÄ¼¼ÄÜÁË¡£
Ö»ÔÚÒ»ÖÖÆ½Ì¨ÉÏÕ¹¿ª¹¤×÷µÄÊý¾Ý ......