Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

Oracle³£ÓÃSqlÓï¾ä

1. ´´½¨ÊÓͼ£º
CREATE OR REPLACE VIEW SM_V_UNIT_AUTH AS
SELECT T2.UNIT_ID,
        T2.SUPER_UNIT_ID,
        T1.AUTH_ID,
        T1.AUTH_NAME,
        T1.AUTH_TYPE,
        T1.AUTH_DESC,
        T1.CREATE_UNIT,
        T1.CREATE_DATE,
        (SELECT UNIT_NAME from SM_T_UNIT C WHERE C.UNIT_ID=T1.CREATE_UNIT) CREATE_UNIT_NAME,
        T1.VALID_FLAG,
        T1.UNIT_NAME,
        T1.EDITABLE,
        T1.AUTHABLE
 from
 (SELECT A.*,
 B.UNIT_ID,
 B.UNIT_NAME,
 (SELECT UAR1.EDITABLE from SM_T_UNIT_AUTH_REL UAR1 WHERE UAR1.AUTH_ID = A.AUTH_ID
 AND UAR1.UNIT_ID = B.UNIT_ID) AS EDITABLE,
 (SELECT UAR1.AUTHABLE from SM_T_UNIT_AUTH_REL UAR1 WHERE UAR1.AUTH_ID = A.AUTH_ID
 AND UAR1.UNIT_ID =  B.UNIT_ID) AS AUTHABLE  from SM_T_AUTH A,SM_T_UNIT B
 WHERE A.AUTH_ID IN (SELECT UAR1.AUTH_ID from SM_T_UNIT_AUTH_REL UAR1
 WHERE UAR1.UNIT_ID = B.UNIT_ID)
 ORDER BY A.AUTH_NAME) T1,SM_T_UNIT T2 where T1.UNIT_ID=T2.UNIT_ID
;
==========================================================================================
==========================================================================================
2. ´´½¨´æ´¢¹ý³Ì£º
create or replace procedure sm_sp_update_unitAuthRel is
  cursor cur_unitAuthRels is select * from sm_t_unit_auth_rel uar where uar.editable = 'F';
  v_unitAuthRel sm_t_unit_auth_rel%rowtype;
  v_today varchar2(10);
  v_validdate varchar2(10);
begin
  open cur_unitAuthRels;
  v_today :=to_char(sysdate,'yyyy-mm-dd');
  loop
&


Ïà¹ØÎĵµ£º

ÔÚOracleÖвéѯ±íµÄ´óСºÍ±í¿Õ¼äµÄ´óС

 ÓÐÁ½ÖÖº¬ÒåµÄ±í´óС¡£Ò»ÖÖÊÇ·ÖÅä¸øÒ»¸ö±íµÄÎïÀí¿Õ¼äÊýÁ¿£¬¶ø²»¹Ü¿Õ¼äÊÇ·ñ±»Ê¹Ó᣿ÉÒÔÕâÑù²éѯ»ñµÃ×Ö½ÚÊý£º
select segment_name, bytes
from user_segments
where segment_type = 'TABLE';
»òÕß
   Select Segment_Name,Sum(bytes)/1024/1024 from User_Extents Group By Segment_Name
ÁíÒ»ÖÖ±íÊ ......

oracleÖе¥¼Ç¼º¯ÊýµÄ¹éÄÉ×ܽá

 SQLÖеĵ¥¼Ç¼º¯Êý
Ò»¡¢×Ö·ûº¯Êý
 
1.ASCII
·µ»ØÓëÖ¸¶¨µÄ×Ö·û¶ÔÓ¦µÄÊ®½øÖÆÊý;
SQL> select ascii(’A’) A,ascii(’a’) a,ascii(’0’) zero,ascii(’ ’) space from dual;
A A ZERO SPACE
--------- --------- --------- ---------
65 97 48 32
......

Oracleʱ¼äÀàÐÍÊý¾ÝΪ0µÄBug

¿ª·¢×éÔÚÊý¾ÝÇ¨ÒÆÊ±£¬±¨¸æ·¢ÏÖһЩÊýֵΪ'0000/00/00'µÄdateÊý¾Ý£¬µ¼ÖÂÊý¾ÝÇ¨ÒÆÊ§°Ü¡£
Õâ¸öÎÊÌâÓÐµãÆæ¹Ö£¬ÒòΪÔÚOracleÖУ¬dateÀàÐ͵ÄÊý¾ÝµÄȡֵ·¶Î§ÊÇ´Ó-4712/12/31µ½9999/12/31Ö®¼ä£¬²¢ÇÒÄê·Ý²»ÄÜΪ0¡£Ò²¾ÍÊÇ˵'0000/00/00'ÊÇÒ»¸ö·Ç·¨Êý¾Ý£¬²»ÎªOracleËù½ÓÊÜ¡£
 
SQL> select to_date('0000-00-00', 'yyyy-mm- ......

OracleÊý¾Ý¿âÖÐÐòÁÐÓ÷¨½²½â

ÐòÁÐ(SEQUENCE)ÊÇÐòÁкÅÉú³ÉÆ÷£¬¿ÉÒÔΪ±íÖеÄÐÐ×Ô¶¯Éú³ÉÐòÁкţ¬²úÉúÒ»×éµÈ¼ä¸ôµÄÊýÖµ(ÀàÐÍΪÊý×Ö)¡£ÆäÖ÷ÒªµÄÓÃ;ÊÇÉú³É±íµÄÖ÷¼üÖµ£¬¿ÉÒÔÔÚ²åÈëÓï¾äÖÐÒýÓã¬Ò²¿ÉÒÔͨ¹ý²éѯ¼ì²éµ±Ç°Öµ£¬»òʹÐòÁÐÔöÖÁÏÂÒ»¸öÖµ¡£
´´½¨ÐòÁÐÐèÒªCREATE SEQUENCEϵͳȨÏÞ¡£ÐòÁеĴ´½¨Óï·¨ÈçÏ£º
CREATE SEQUENCE ÐòÁÐÃû
[INCREMENT BY n]
[ST ......

SQLÖÐCASEʹÓÃ

 ½ñÌìÔÚÏîÄ¿ÖÐÓÐÒ»ÎÊÌ⣬ÔÚÍøÉϲéѯÁËcaseµÄÓ÷¨£¬Ìû³öÀ´ºÍ´ó¼Ò·ÖÏíÏ¡£
 ÎÊÌâÃèÊö£ºÔÚÒ»ÕűíÖÐÓÐÒ»×Ö¶ÎbitÀàÐÍ£¬±íʾ´ËÌõÊý¾ÝÊÇ·ñ±»Ëø¶¨£¬ÔÚÒ³ÃæÉÏÓÐÒ»°´Å¥ÊǶԴËÌõÊý¾Ý½øÐÐËø¶¨ºÍ½âËøµÄ£¬Ñ¡ÔñÒ³ÃæÖеÄÊý¾Ý£¬µã»÷Õâ¸ö°´Å¥£¬Èç¹ûÕâÌõÊý¾ÝÊÇËø¶¨µÄ£¬¾Í½âËø£»Èç¹ûÊÇδ˵¶¨µÄ¾ÍËø¶¨£¬ÕâÑù¾ÍÓÃÒ»ÌõÓï¾äÀ´ÊµÏÖ¡£ºóÀ´Ï ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ