¶¯Ì¬Ö´ÐÐsqlÓï¾ä
execute immediate Óï·¨
ºóÃæ¸úÉÏsqlÓï¾ä¿ÉÒÔ¶¯Ì¬Ö´ÐÐsqlÓï¾ä.
ʹÓó¡¾°:
(1)¼ÓÈ붯̬±í.±ÈÈçÄãÓÐÒ»ÕűíµÄÃû×Ö²»Ã÷È·,ÊÇÐèÒªÅжϵõ½µÄ,Ôò¿ÉÒÔʹÓøÃÓï·¨À´Éú³ÉsqlÓï¾ä.
(2)¼ÓÈ붯̬×Ö¶Î.Äã¸ù¾ÝÅжÏ,×îÖÕ»á¼ÓÈëͬһÕűí,µ«ÊÇÕâÕűí¸ù¾Ý²»Í¬µÄÅжÏ×ֶλáÓÐËù²»Í¬,´ËʱÈç¹ûÖ±½ÓдsqlÊǼӲ»½øÈ¥µÄ,±ØÐëʹÓö¯Ì¬sqlÓï¾ä,ÈÃoracle±àÒëʱ²»ÅжÏ×Ö¶ÎÊÇ·ñÓë±íÆ¥Åä,ÕâÑùµÄ»°²ÅÄܶ¯Ì¬¼ÓÈë×Ö¶Î.
Àý:
execute immediate 'insert into po_p_downloaddesc_' || table_languages(1) || '( contentid ) values(''' || s_contentid || ''')';
PS:ҪעÒâµÄµØ·½.
(1)¼ÓÈë×Ö¶Îʱ,Éú³ÉÒÔºóµÄsqlÓï¾äÒªÓë·Ç¶¯Ì¬sqlÓï¾äһģһÑù,Ò²¾ÍÊÇ˵,Èç¹ûsqlÓï¾äÖÐÓÐ''µÄ,ÄÇôÔÚ¶¯Ì¬ÖÐÒ²±ØÐëÆ´½Ó''.
ÀýÈç:
¾²Ì¬sql:insert into page values('123');
¶¯Ì¬sql:execute immediate 'insert into page values(' ''123'' )';
ÖмäÁ©¸ö''123''×îºóÉú³É'123'.Óᄇ̬һÑù²Å¿ÉÒÔ²åÈë,²»È»±¨´í.
¸´ºÏ±íÀàÐÍÈç¹ûÊǽ¨Ò»¸öÀàÐ͵ϰ
create or replace type type_table is table of varchar2(100);
ÄÇôÔÚ´æ´¢¹ý³Ì»òº¯Êý»ò³ÌÐò¿éÖе÷ÓÃʱ±ØÐë³õʼ»¯.
declare
table_languages type_table := type_table();
begin
table_languages.extend(2);
--ÉÏÃæÎª¸´ºÏ±ítable_languagesÉêÃ÷ÁË2¸ö¿Õ¼ä,ÕâÑùÖ»ÓÐ1ºÍ2¿ÉÒÔÓÃ,3µÄ»°¾Í»áÅ׳öÔ½½ç
end;
Ïà¹ØÎĵµ£º
ISNULL
²éѯÊý¾ÝʱÈô×Ö¶ÎÖµÊÇNULL£¬ÔòʹÓÃʹÓÃÖ¸¶¨µÄÌæ»»ÖµÌæ»» NULL¡£
Óï·¨
ISNULL ( check_expression , replacement_value )
²ÎÊý
check_expression
½«±»¼ì²éÊÇ·ñΪ NULLµÄ±í´ïʽ¡£check_expression ¿ÉÒÔÊÇÈκÎÀàÐ͵ġ£
replacement_value
ÔÚ check_expression Ϊ NULLʱ½«·µ»ØµÄ±í´ïʽ¡£replacement_value ± ......
±ÈÈçÔÚNorthwindÊý¾Ý¿âÖÐ
ÓÐÒ»¸ö²éѯΪ
SELECT c.CustomerId, CompanyName
from Customers c
WHERE EXISTS(
SELECT OrderID from ......
ǰÑÔ£º
sql_trace ÊÇÎÒÔÚ¹¤×÷Öо³£ÒªÓõ½µÄµ÷ÓŹ¤¾ß£¬Ïà±È½Ïstatspack ÎÒ¸üÔ¸ÒâÓÃÕâ¸ö¹¤¾ß¡£
ÒòΪÊý¾Ý¿âÂýÔÒòµÄ85%ÒÔÉÏÊÇÓÉÓÚsqlÎÊÌâÔì³ÉµÄ£¬statspackûÓÐsqlµÄÖ´Ðмƻ®¡£ÏÔʾûÓÐËüÖ±¹Û£¬·½±ã£¬¶ÔÏëÒªÕë¶ÔÐÔ²»Ç¿£¬
1£¬½éÉÜÊý¾Ý¿âµ÷ÓÅÐèÒª¾³£»áÓõ½µÄ¹¤¾ß ......
ÔÚJAVAÖеÄSQL Óï¾äµÄ±àд·½Ã棬ûÓÐʹÓÃORACLE °ó¶¨±äÁ¿£¬ºÜ´ó³Ì¶ÈÉϽµµÍÁËÊý¾Ý¿âµÄÐÔÄÜ£¬±íÏÖÔÚÁ½¸ö·½Ã棺
1¡¢SQLÓï¾äÓ²·ÖÎö(Hard Parse)Ì«¶à£¬ÑÏÖØÏûºÄCPU×ÊÔ´£¬ÑÓ³¤ÁËSQLÓï¾ä×ܵÄÖ´ÐÐʱ¼ä
SQLÓï¾äµÄÖ´Ðйý³Ì·Ö¼¸¸ö²½Ö裺Óï·¨¼ì²é¡¢·ÖÎö¡¢Ö´ÐС¢·µ»Ø½á¹û¡£ÆäÖзÖÎöÓÖ·ÖΪӲ·ÖÎö(Hard Parse)ºÍÈí·ÖÎö(Soft Pars ......