oracle ±Ê¼Ç II Ö®DML:Êý¾Ý²Ù×÷ÓïÑÔ
DML:Data Manipulation Language Êý¾Ý²Ù×÷ÓïÑÔ
°üÀ¨£ºCRUD
1. insertÓï¾ä
(1) ´ÓÆäËü±íÖи´ÖÆÊý¾Ý,ʵÏÖ·½·¨:ÔÚinsert Óï¾äÖмÓÈë²éѯÓï¾ä
insert into sales_reps(id,name,salary,commission_pct) select employee_id,last_name,salary,commission_pct
from employees where job_id like '%rep';
(2) updateÖÐʹÓÃ×Ó²éѯ
update employees set job_id = (select job_id from employees where employee_id = 205),
salary = (select salary from employees where employee_id = 205)
where employee_id = 114;
È磺¸üÐÂ114ºÅÔ±¹¤µÄ¹¤×÷ºÍ¹¤×ÊʹÆäÓë205ºÅÔ±¹¤Ïàͬ
update employees set job_id = (select job_id from employees where employee_id = 205),
salary = (select salary from employees where employee_id = 205)
where employee_id = 114
ÔÙ¿´Ò»¸öÎÊÌ⣬×ÐϸÌå»á½â¾ö²½Ö裺
¸ü¸Ä 108 Ô±¹¤µÄÐÅÏ¢: ʹÆä ¹¤×ʱäΪËùÔÚ²¿ÃÅÖеÄ×î¸ß¹¤×Ê£¬job±äΪ¹«Ë¾ÖÐÆ½¾ù¹¤×Ê×îµÍµÄjob
·ÖÎö£º
µÚ1 ²½ Ê×ÏȲéѯ 108 ËùÔÚ²¿ÃŵÄ×î¸ß¹¤×ÊÊǶàÉÙ
select max(salary) from employees where department_id =
( select department_id from employees where employee_id = 108)
µÚ 2 ²½ ²éѯ¹«Ë¾ÖÐÆ½¾ù¹¤×Ê×îµÍµÄ job_id
select job_id from employees group by job_id having avg(salary) =
(select min(avg_sal) from(select avg(salary) avg_sal from employees group by job_id) )
µÚ 3 ²½ ʵÏÖ¸üÐÂ
update employees set salary = ( select max(salary) from employees
where department_id =
Ïà¹ØÎĵµ£º
ImpºÍExp
ÃüÁîÏê½â:
Exp
µ¼³ö
ģʽ:
Fullģʽ---µ¼³ö
Õû¸öÊý¾Ý¿â
Userģʽ---µ¼³ö
Ö¸¶¨µÄÓû§
Tableģʽ—µ¼³ö
Ö¸¶¨µÄ±í
Tablespaceģʽ—µ¼³ö
±í
¿Õ¼ä
Exp
µ¼³ö
²ÎÊý:
OWNERÖ¸¶¨Òªµ¼³ö
µÄÓû§Áбí
FULL=y±íʾҪµ¼³ö
Õû¸öÊý¾Ý¿â
TablesÖ¸¶¨Òªµ¼³ö
µÄ±í
TablepacesÖ¸¶¨Òªµ¼³ö
µÄ±í
......
ÔÚPL/SQL³ÌÐòÉè¼ÆÖУ¬ÓÐÈýÖÖ¶¨Òå¼Ç¼ÀàÐ͵ķ½·¨£ºÒ»ÖÖÊÇʹÓÃ%ROWTYPEÊôÐÔ£»ÁíÒ»ÖÖÊÇÔÚPL/SQL³ÌÐòµÄÉùÃ÷²¿·ÖÏÔʾ¶¨Òå¼Ç¼ÀàÐÍ£»×îºóÒ»ÖÖ·½·¨Êǽ«¼Ç¼ÀàÐͶ¨ÒåΪÊý¾Ý¿â½á¹¹»ò¶ÔÏóÀàÐÍ¡£
ÎÒÏȼòµ¥µÄ½éÉÜÒ»¸öÏÂÃæÒªÓõ½µÄ±íµÄ½á¹¹£¨ºÚÌå±êÃ÷µÄ×Ö¶ÎΪÖ÷¼ü£©£º
INDIVIDUALS±í
INDIVIDUAL ID
FIRST NAME
MIDDLE_INITI ......
µ¼¶Á£º
¡¡¡¡2009Äê9ÔÂOracle¹«Ë¾·¢²¼ÁËÆÚ´ýÒѾõÄOracle 11g R2£¬±¾ÏµÁÐÎÄÕ½«¸ø¶ÁÕßÒ»Ò»½Ò¿ªÐ°汾ÖеÄÐÂÌØÐÔ£¬²¢»á½éÉÜÆóÒµÈçºÎÀûÓÃÕâЩÐÂÌØÐÔ½«ÏÖÓеÄOracle 9i£¬10g£¬11g R1Éý¼¶µ½Oracle 11g R2.
¡¡¡¡¾ÀúÁËÄÑÒÔÈÌÊܵij¤Ê±¼äµÈ´ý£¬Oracle¹«Ë¾Í»È»ÔÚ9ÔÂ1·¢²¼ÁËOracle 11g R2£¬ÎÒ²»µÃ²»³ÐÈÏOracleµÄ±£Ãܹ¤×÷×öµÃ ......
1. SQL Óï¾äÓëSQL*Plus ÃüÁî
SQL
SQL*Plus
Ò»ÖÖÓïÑÔ
Ò»ÖÖ»·¾³
ANSI±ê×¼
Oracle µÄÌØÐÔÖ®Ò»
¹Ø¼ü×Ö²»ÄÜËõд
¹Ø¼ü×Ö¿ÉÒÔËõд
ʹÓÃÓï¾ä¿ØÖÆÊý¾Ý¿âÖеıíµÄ¶¨ÒåÐÅÏ¢
ºÍ±íÖеÄÊý¾Ý
ÃüÁî²»ÄܸıäÊý¾Ý¿âÖеÄÊý¾ÝµÄÖµ
¼¯ÖÐÔËÐÐ
2.ÒÔϼ¸¸ö²éѯºÜÖØÒª£¬×ÐϸÌå»á
1 (ÓÐÔ±¹¤µÄ³ ......
(1) v$sql
¡¡¡¡Ò»ÌõÓï¾ä¿ÉÒÔÓ³Éä¶à¸öcursor,ÒòΪ¶ÔÏóËùÖ¸µÄcursor¿ÉÒÔÓв»Í¬Óû§(ÈçÀý1)¡£Èç¹ûÓжà¸öcursor(×ÓÓαê)´æÔÚ£¬ÔÚV$SQLAREAΪËùÓÐcursorÌṩ¼¯ºÏÐÅÏ¢¡£
Àý1£º
ÕâÀï½éÉÜÒÔÏÂchild cursor
user A: select * from tbl
user B: select * from tbl
´ó¼ÒÈÏΪÕâÁ½ÌõÓï¾äÊDz»ÊÇÒ»ÑùµÄ°¡£¬¿ÉÄÜ»áÓкܶàÈË»á˵ÊÇÒ»Ñù ......