OracleÓαêʵÓÃ
declare
sqlstring varchar2(100);
emprow emp_bak%rowtype;
myno emp_bak.empno%type;
begin
--sqlstring:='create table emp_bak as select * from emp';
sqlstring:='select * from emp_bak where empno=:myno and sal>:mysal';
myno:='&ÇëÊäÈëÔ±¹¤±àºÅ';
--¶¯Ì¬SQL
execute immediate sqlstring into emprow using myno,3001 ;
dbms_output.put_line(emprow.sal);
exception
when no_data_found then
dbms_output.put_line('ÊäÈëµÄÔ±¹¤±àºÅ²»´æÔÚ');
end;
select * from emp_bak
--ÒþÊ¿Óαê ÓαêÃû×Ö SQL
--ÒþʽÓαê ÊÇoracle ϵͳ×Ô¶¯ÔÚÔËÐÐDMLÓï¾äµÄʱºò Éú³ÉµÄ¡£ Ëû×Ô¶¯´ò¿ª ×Ô¶¯¹Ø±Õ¡£
-- Ò»°ãÇé¿öÏ ¸ÃÓÎ±ê ¶ÔÓÚ³ÌÐòÔ±À´Ëµ ÊÇ͸Ã÷µÄ
declare
begin
update emp_bak set sal = 2500 where empno = 8888;
--Êä³öÒþÊ¿ÓαêÖеÄÒ»¸öÊôÐÔ %rowcount ¾ÍÊÇÓ°ÏìµÄÐÐÊý
dbms_output.put_line(sql%rowcount);
end;
-- %ISOPEN - ÓαêÊÇ·ñ´ò¿ª ²¼¶ûÖµ
-- %noopen ûÓÐÕâ¸öÊôÐÔ£¡£¡
-- %FOUND – ÓαêÖÐÊÇ·ñ»¹ÓÐÊý¾Ý
-- %NOTFOUND – ÓαêÖÐÊÇ·ñ»¹ÓÐÊý¾Ý
-- %ROWCOUNT – SQL Óï¾äÓ°ÏìµÄÐÐÊý
-- CURSOR Óαê
--ÏÔʽÓαê ÓгÌÐòÔ±×Ô¼º¶¨ÒåÓαê ×Ô¼º¶¨Òå ×Ô¼ºÊ¹ÓÃ
--ÓαêҪʹÓõϰ ²½Öè 1 ¶¨Òå 2 ´ò¿ª 3 ʹÓã¨Ñ»·£© 4 ¹Ø±ÕÓαê
declare
--`1 ¶¨ÒåÓαê
cursor mycursor is select ename,sal from emp_bak;
emprow emp_bak%rowtype;
begin
-- 2 ´ò¿ªÓαê
open mycursor;
-- 3 ʹÓÃÓαê
loop
-- ÓαêÖеÄÊý¾Ý ÊÇͨ¹ý¹Ø¼ü×Ö ÌáÈ¡ fetch
fetch mycursor into emprow.ename,emprow.sal; -- 1 ÌáÈ¡Êý¾Ý 2 ²¢ÇÒ¸ÃÓαê»áÖ¸ÏòÏÂÒ»ÐÐ
if(emprow.sal >2000 and emprow.sal<3000) then
dbms_output.put_line(emprow.ename||' '|| emprow.sal);
end if;
-- dbms_output.put_line(emprow.ename||' '|| emprow.sal);
exit when mycursor%NOTFOUND; --2 ʹÓÃÓαêµÄ%NOTFOUNDÊôÐÔ¼ì²âÓαêÊÇ·ñ»¹ÓÐÊý¾Ý Èç¹ûûÓÐÁË ÄÇô¾ÍÍ˳öÑ»·£¡£¡
end loop;
-- ¹Ø±ÕÓαê
close mycursor;
end;
--¼òµ¥Ð´·¨ Ñ»·Óαê
declare
--`1 ¶¨ÒåÓαê
cursor mycursor is select ename,
Ïà¹ØÎĵµ£º
ÈçºÎÓ¦¶ÔORACLEÊý¾Ý¿âµÄ²¿·ÖÃæÊÔÌâÄ¿
1. ½âÊÍÀ䱸·ÝºÍÈȱ¸·ÝµÄ²»Í¬µãÒÔ¼°¸÷×ÔµÄÓŵã
½â´ð:Èȱ¸·ÝÕë¶Ô¹éµµÄ£Ê½µÄÊý¾Ý¿â£¬ÔÚÊý¾Ý¿âÈԾɴ¦ÓÚ¹¤×÷״̬ʱ½øÐб¸·Ý¡£¶øÀ䱸·ÝÖ¸ÔÚÊý¾Ý¿â¹Ø±Õºó£¬½øÐб¸·Ý£¬ÊÊÓÃÓÚËùÓÐģʽµÄÊý¾Ý¿â¡£Èȱ¸·ÝµÄÓŵãÔÚÓÚµ±±¸·Ýʱ£¬Êý¾Ý¿âÈԾɿÉÒÔ±»Ê¹Óò¢ÇÒ¿ÉÒÔ½«Êý¾Ý¿â»Ö¸´µ½ÈÎÒâÒ»¸öʱ¼äµã¡£À䱸· ......
ÓÐÁËÓα꣬¾Í¿ÉÒÔ²»ÓÃÿÌõÊý¾ÝÈ¥¼ì²éÊÇ·ñ·ûºÏÌõ¼þ£¬ÏÈ¿´Ò»ÏÂÏÂÃæµÄ£º
--ÓαêʹÓã¨ÓαêÆäʵÊÇÒ»¸ö·ÅÈëÄÚ´æÁÙʱ±í£©
declare
money cms3_simcard.card_fee%type :=0; --¶¨ÒåÓë±í×Ö¶ÎÏàͬÀàÐÍ
cursor mycursor is --¶¨ÒåÓαê
select ......
ÔÚʹÓÃOracleÖÐʹÓÃRownum£¬»áÓÐЩÎó½â£¬ÏÖÕûÀíÏÂÍøÓÑÃǵÄÎÄÕ£¬Ï£ÍûÄÜÓÐËù°ïÖú£¬ºÇºÇ
¶ÔÓÚ Oracle µÄ rownum ÎÊÌ⣬ºÜ¶à×ÊÁ϶¼Ëµ²»Ö§³Ö>,>=,=,between...and£¬Ö»ÄÜÓÃÒÔÉÏ·ûºÅ(<¡¢<=¡¢!=)£¬²¢·Ç˵ÓÃ>,>=,=,between..and ʱ»áÌáʾSQLÓï·¨´íÎ󣬶øÊǾ³£ÊDz鲻³öÒ»Ìõ¼Ç¼À´£¬»¹»á³öÏÖËÆºõÊÇĪÃûÆäÃîµÄ½á¹û ......
ÓÃϵͳ¹ÜÀíÔ±£¬²é¿´µ±Ç°Êý¾Ý¿âÓм¸¸öÓû§Á¬½Ó£º
SQL> select username,sid,serial# from v$session;
Èç¹ûҪͣij¸öÁ¬½ÓÓÃ
SQL> alter system kill session 'sid,serial#';
......
OracleÊý¾Ýµ¼Èëµ¼³öimp/exp¾ÍÏ൱ÓÚoracleÊý¾Ý»¹ÔÓ뱸·Ý¡£expÃüÁî¿ÉÒÔ°ÑÊý¾Ý´ÓÔ¶³ÌÊý¾Ý¿â·þÎñÆ÷µ¼³öµ½±¾µØµÄdmpÎļþ£¬impÃüÁî¿ÉÒÔ°ÑdmpÎļþ´Ó±¾µØµ¼Èëµ½Ô¶´¦µÄÊý¾Ý¿â·þÎñÆ÷ÖС£ ÀûÓÃÕâ¸ö¹¦ÄÜ¿ÉÒÔ¹¹½¨Á½¸öÏàͬµÄÊý¾Ý¿â£¬Ò»¸öÓÃÀ´²âÊÔ£¬Ò»¸öÓÃÀ´ÕýʽʹÓá£
Ö´Ðл·¾³£º¿ÉÒÔÔÚSQLPLUS.EXE»òÕßDOS£¨ÃüÁîÐУ©ÖÐÖ´ÐУ¬
......