oracle¼¶ÁªÉ¾³ý
oracleÖÐʹÓÃon delete cascadeºÍon delete set nullÀ´½¨Á¢Íâ¼ü
ÆäÃæÎÒÃǽéÉÜÁË´´½¨Íâ¼üÔ¼ÊøÊ±Èç¹ûʹÓÃoracleĬÈϵĴ´½¨·½Ê½£¬ÔÚɾ³ý±»²ÎÕÕµÄÊý¾Ýʱ£¬½«ÎÞ·¨±»É¾³ý£¬ÕâÒ»µãÔÚoracle9iÖиøÁËÎÒÃǸü¶àÁé»îµÄÑ¡Ôñ£¬ÎÒÃÇ¿ÉÊÇʹÓÃon delete cascadeºÍ on delete set null¹Ø¼ü×ÖÀ´¾ö¶¨É¾³ý±»²ÎÕÕÊý¾ÝʱÊÇ·ñÒª½«²ÎÕÕÕâ¸öÊý¾ÝµÄÄÇЩÊý¾ÝÒ»²¢É¾³ý£¬»¹Êǽ«ÄÇЩ²ÎÕÕÕâÌõÊý¾ÝµÄÊý¾ÝµÄ¶ÔÓ¦Öµ¸³¿Õ¡£
ÀýÈçÏÂÃæÕâÁ½¸ö±íÖÐ·Ö±ð´æµÄʱԱ¹¤µÄ»ù±¾ÐÅÏ¢ºÍ¹«Ë¾µÄ²¿ÃÅÐÅÏ¢¡£ÎÒÃÇΪ
create table dept
(deptno number(10) not null,
deptname varchar2(30) not null,
constraint pk_dept primary key(deptno));
ºÍ
create table emp
( empno number(10) not null,
fname varchar2(20) ,
lname varchar2(20) ,
dept number(10) ,
constraint pk_emp primary key(empno));
È»ºóÎÒÃÇÏÖÔÚ·Ö±ðʹÓÃÕâÁ½¸ö¹Ø¼ü×ÖÀ´Ôö¼ÓÍâ¼üÊÔһϣ¬Ê×ÏÈÎÒÃÇÀ´ÊÔÒ»ÏÂon delete cascade
alter table emp
add constraint fk_emp_dept foreign key(dept) references dept(deptno) on delete cascade;
ÏÈÔö¼ÓÍâ¼ü¡£È»ºó²åÈëÊý¾Ý¡£
insert into dept values(1,’ÏúÊÛ²¿’);
insert into dept values(2,’²ÆÎñ²¿’);
insert into emp values (2,’Mary’,'Song’,1);
insert into emp values (3,’Linda’,'Liu’,2);
insert into emp values (4,’Linlin’,'Zhang’,1);
È»ºóÏÖÔÚÎÒҪɾ³ýÏúÊÛ²¿£¬»áÓÐʲôºó¹ûÄØ£¿
delete from dept where deptno = 1;
ÎÒÃÇ·¢ÏÖ³ýÁËdeptÖеÄÒ»ÌõÊý¾Ý±»É¾³ýÁË£¬empÖÐÁ½ÌõÊý¾ÝÒ²±»É¾³ýÁË£¬ÆäÖÐempÖеÄÁ½ÌõÊý¾ÝÊDzÎÕÕÁËÏúÊÛ²¿µÄÕâÌõÊý¾ÝµÄ£¬Õâ¾ÍºÜÈÝÒ×Àí½âon delete cascadeÁË¡£
½ÓÏÂÀ´ÎÒÃÇÔÙÀ´¿´on delete set null,¹ËÃû˼ÒåÁË£¬ÕâÖÖ·½Ê½½¨Á¢µÄÍâ¼üÔ¼Êø£¬µ±±»²ÎÕÕµÄÊý¾Ý±»É¾³ýÊÇ£¬²ÎÕÕ¸ÃÊý¾ÝµÄÄÇЩÊý¾ÝµÄ¶ÔÓ¦Öµ½«»á±äΪ¿ÕÖµ£¬ÏÂÃæÎÒÃÇ»¹ÊÇͨ¹ýÊÔÑéÀ´Ö¤Ã÷on delete set null×÷Óãº
Ê×ÏȻָ´¸Õ²ÅµÄÄǼ¸ÌõÊý¾Ý£¬È»ºó¸ü¸ÄÔ¼Êø£º
alter table emp
add constraint fk_emp_dept foreign key(dept) references dept(deptno) on delete set null;
È»ºóÎÒÃÇÔÚÖ´ÐÐɾ³ý²Ù×÷£º
delete from dept where deptno = 1;
ÄãÒ²»á·¢ÏÖ³ýÁËdeptÖеÄÏúÊÛ²¿±»É¾³ýÒÔÍ⣬empÖвÎÕÕÕâÌõÊý¾ÝµÄÁ½ÌõÊý¾ÝµÄdeptµÄÖµ±»×Ô¶¯¸³¿ÕÁË£¬Õâ¾ÍÊÇon delete set nullµÄ×÷ÓÃÁË¡£
ʹÓÃon delete set nullÓÐÒ»µãÐèÒ
Ïà¹ØÎĵµ£º
ÔÚwindows ÏÂÅäÖÃPHPʹÓÃORACLEÊý¾Ý¿âÒªµã
ÔÚwindowÏ£¬¾³£ÓÃapache + PHP À´×öÓ¦ÓÃÆ½Ì¨£¬µ«ÊÇÈç¹ûʹÓÃoracle×öºǫ́Êý¾Ý¿â£¬µ«ÓÖûÓа²×°ÓÐoracle¿Í»§¶Ë£¬ÏÂÃæµÄÅäÖÿÉÒԲο¼
1¡¢ÔÚûÓа²×°oracleµÄ»úÆ÷ÉÏ£¬PHPÎÞ·¨¼ÓÔØphp_oci8.dllÄ£¿é£¬ÔÒòÊÇphp_oci8.dllÒÀÀµµÄÏà¹Ø×é¼þûÓÐÕÒµ½¡£
ÄãÕýÈ·ÉèÖÃÁË ......
1.°²×°Ê±ÒªÖ´ÐÐÁ½¸ö½Å±¾£¬root.shÊÇÆäÖÐÒ»¸ö¡£
ÐèÒªÓÃrootÓû§Ö´ÐÐroot.shÈ¥Éú³É/etc/oratabÎļþ¡£————1.dbcaÖв»»áÓÐɾ³ýÑ¡Ïî(ÒòΪÔËÐÐʱÐèÒª/etc/oratab)
& ......
60.AVG(DISTINCT|ALL)
all±íʾ¶ÔËùÓеÄÖµÇ󯽾ùÖµ,distinctÖ»¶Ô²»Í¬µÄÖµÇ󯽾ùÖµ
SQLWKS> create table table3(xm varchar(8),sal number(7,2));
Óï¾äÒÑ´¦Àí¡£
SQLWKS> insert into table3 values(gao,1111.11);
SQLWKS> insert into table3 values(gao,1111.11);
SQLWKS> insert into table3 values(zhu ......
80¡£LAST
¹¦ÄÜÃèÊö£º´ÓDENSE_RANK·µ»ØµÄ¼¯ºÏÖÐÈ¡³öÅÅÔÚ×îºóÃæµÄÒ»¸öÖµµÄÐУ¨¿ÉÄܶàÐУ¬ÒòΪֵ¿ÉÄÜÏàµÈ£©£¬Òò´ËÍêÕûµÄÓï·¨ÐèÒªÔÚ¿ªÊ¼´¦¼ÓÉÏÒ»¸ö¼¯ºÏº¯ÊýÒÔ´ÓÖÐÈ¡³ö¼Ç¼
SAMPLE£ºÏÂÃæÀý×ÓÖÐDENSE_RANK°´²¿ÃÅ·ÖÇø£¬ÔÙ°´Ó¶½ðcommission_pctÅÅÐò£¬FIRSTÈ¡³öÓ¶½ð×îµÍµÄ¶ÔÓ¦µÄËùÓÐÐУ¬È»ºóÇ°ÃæµÄMAXº¯Êý´ÓÕâ¸ö¼¯ºÏÖÐÈ¡³öнˮ×îµ ......
OracleµÄtrunc º¯ÊýÒ»°ãÓÃÀ´ ¶ÔÈÕÆÚºÍʱ¼ä½øÐнØÈ¡¡£
1¡¢Êý×Ö´¦Àí ¡£½ØÈ¡
select trunc(5.75),trunc(5.75,1),trunc(5.75,-1),trunc(556.234,-2) from dual;
Êä³ö:
TRUNC(5.75) TRUNC(5.75,1) TRUNC(5.75,-1) TRUNC(556.234,-2)
----------- ------------- -------------- ----- ......