Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB
ÈÈÃűêÇ©£º c c# c++ asp asp.net linux php jsp java vb Python Ruby mysql sql access Sqlite sqlserver delphi javascript Oracle ajax wap mssql html css flash flex dreamweaver xml
 ×îÐÂÎÄÕ :

oracleÈÕÆÚº¯Êý¼¯½õ


Ò»¡¢ ³£ÓÃÈÕÆÚÊý¾Ý¸ñʽ
1.Y»òYY»òYYY ÄêµÄ×îºóһ룬Á½Î»»òÈýλ
SQL> Select to_char(sysdate,'Y') from dual;
TO_CHAR(SYSDATE,'Y')
--------------------
7
SQL> Select to_char(sysdate,'YY') from dual;
TO_CHAR(SYSDATE,'YY')
---------------------
07
SQL> Select to_char(sysdate,'YYY') from dual;
TO_CHAR(SYSDATE,'YYY')
----------------------
007
2.Q ¼¾¶È 1¡«3ÔÂΪµÚÒ»¼¾¶È£¬2±íʾµÚ¶þ¼¾¶È¡£
SQL> Select to_char(sysdate,'Q') from dual;
TO_CHAR(SYSDATE,'Q')
--------------------
2
3.MM Ô·ÝÊý
SQL> Select to_char(sysdate,'MM') from dual;
TO_CHAR(SYSDATE,'MM')
---------------------
05
4.RM Ô·ݵÄÂÞÂí±íʾ £¨VÔÚÂÞÂíÊý×ÖÖбíʾ 5£©
SQL> Select to_char(sysdate,'RM') from dual;
TO_CHAR(SYSDATE,'RM')
---------------------
V
5.Month ÓÃ9¸ö×Ö·û³¤¶È±íʾµÄÔ·ÝÃû
SQL> Select to_char(sysdate,'Month') from dual;
TO_CHAR(SYSDATE,'MONTH')
------------------------
5ÔÂ
6.WW µ±ÄêµÚ¼¸ÖÜ £¨2007Äê5ÔÂ29ÈÕΪ2007ÄêµÚ22ÖÜ£©
SQL> Select to_char(sysdate,'WW') from dual;
TO_ ......

ºÜÈ«µÄhelp.sql °²×°OracleµÄsqlplus°ïÖúϵͳ

ºÜÈ«µÄhelp.sql °²×°OracleµÄsqlplus°ïÖúϵͳ
ÔÚlinuxϵͳϵÄʱºò£¬ÎÒÃÇ¿ÉÒÔͨ¹ýmanÃüÁ»ñµÃϵͳÀï¶Ôij¸öÃüÁîµÄusageµÄ½âÊÍ¡£
ÔÚsqlplusÀïÎÒÃÇÒ²¿ÉÒÔͨ¹ýhelpºÍ?ÃüÁî¡£
sqlplusµÄ°ïÖúÖ÷Ìâ¶ÔÓ¦µÄÊÇÊý¾Ý¿âÀïµÄÒ»Õűí(system.help)¡£
ÔÚ$ORACLE_HOME/sqlplus/admin/help/Ŀ¼ÏµÄhelpus.sql°üº¬ÁËÕâ¸ö±íµÄ°ïÖúÖ÷Ìâ
²»¹ýoracle×Ô´øµÄhelpºÍ?µÄ½âÊÍÌ«ÉÙÁË
ÔÚÍøÉÏÕÒÁ˺ܾÃÖÕÓÚÕÒµ½Ò»¸öºÜÈ«µÄhelp.sqlß·
ÏÂÔØÎÄÖи½¼þ£¬ÓÃsystemµÇ¼£¬ÒòΪÕâ¸öÊǽ¨Á¢ÔÚsystemµÄschemaÀïµÄhelp±íÀïµÄ¡£
Ö±½ÓÖ´Ðнű¾¾Í¿ÉÒÔÁË¡£±ÈÈçÎÒ°ÑÕâ¸ösql±£´æµ½$ORACLE_HOME\sqlplus\admin\helpÀ
´ó¼ÒÔÚÕâÀï¿ÉÒÔ¿´µ½ÓÐ
helpbld.sql
helpdrop.sql
helpus.sql
hlpbld.sql
ÕâËĸöÎļþ£¬Õâ¾ÍÊÇoracle×Ô´øµÄhelp½Å±¾¡£¿ÉÒÔÖ´ÐÐ
helpbld.sqlÀ´°²×°oracleĬÈϵÄhelp£¬ ÕâÀï»áÌáʾÄãÊäÈëÁ½¸ö²ÎÊý£¬¿´ÁËÕâ¸öÔ´Îļþ¡£
Á½¸ö²ÎÊýÒ»¸öÊǵ±Ç°Â·¾¶£¬Ò»¸öÊÇhelpus.sql£¬ »¹ÊÇÓÃsystemÀ´Ö´ÐУ¬Ö´ÐÐÍê¾Í°²×°ÁËhelp£¬
¾Í¿ÉÒÔʹÓÃÎÒÉÏÃæµÄÄÇЩ·½Ê½¡£Õâ¸öÊÇĬÈϻᰲװµÄ¡£
Òª°²×°ÎÒÕâ¸ö×îеÄhelpÎļþ£¬Ö»ÐèÒªÖ´ÐоͿÉÒÔÁË
SQL>conn system/systempwd;
SQL>@?/sqlplus/admin/help/h ......

ºÜÈ«µÄhelp.sql °²×°OracleµÄsqlplus°ïÖúϵͳ

ºÜÈ«µÄhelp.sql °²×°OracleµÄsqlplus°ïÖúϵͳ
ÔÚlinuxϵͳϵÄʱºò£¬ÎÒÃÇ¿ÉÒÔͨ¹ýmanÃüÁ»ñµÃϵͳÀï¶Ôij¸öÃüÁîµÄusageµÄ½âÊÍ¡£
ÔÚsqlplusÀïÎÒÃÇÒ²¿ÉÒÔͨ¹ýhelpºÍ?ÃüÁî¡£
sqlplusµÄ°ïÖúÖ÷Ìâ¶ÔÓ¦µÄÊÇÊý¾Ý¿âÀïµÄÒ»Õűí(system.help)¡£
ÔÚ$ORACLE_HOME/sqlplus/admin/help/Ŀ¼ÏµÄhelpus.sql°üº¬ÁËÕâ¸ö±íµÄ°ïÖúÖ÷Ìâ
²»¹ýoracle×Ô´øµÄhelpºÍ?µÄ½âÊÍÌ«ÉÙÁË
ÔÚÍøÉÏÕÒÁ˺ܾÃÖÕÓÚÕÒµ½Ò»¸öºÜÈ«µÄhelp.sqlß·
ÏÂÔØÎÄÖи½¼þ£¬ÓÃsystemµÇ¼£¬ÒòΪÕâ¸öÊǽ¨Á¢ÔÚsystemµÄschemaÀïµÄhelp±íÀïµÄ¡£
Ö±½ÓÖ´Ðнű¾¾Í¿ÉÒÔÁË¡£±ÈÈçÎÒ°ÑÕâ¸ösql±£´æµ½$ORACLE_HOME\sqlplus\admin\helpÀ
´ó¼ÒÔÚÕâÀï¿ÉÒÔ¿´µ½ÓÐ
helpbld.sql
helpdrop.sql
helpus.sql
hlpbld.sql
ÕâËĸöÎļþ£¬Õâ¾ÍÊÇoracle×Ô´øµÄhelp½Å±¾¡£¿ÉÒÔÖ´ÐÐ
helpbld.sqlÀ´°²×°oracleĬÈϵÄhelp£¬ ÕâÀï»áÌáʾÄãÊäÈëÁ½¸ö²ÎÊý£¬¿´ÁËÕâ¸öÔ´Îļþ¡£
Á½¸ö²ÎÊýÒ»¸öÊǵ±Ç°Â·¾¶£¬Ò»¸öÊÇhelpus.sql£¬ »¹ÊÇÓÃsystemÀ´Ö´ÐУ¬Ö´ÐÐÍê¾Í°²×°ÁËhelp£¬
¾Í¿ÉÒÔʹÓÃÎÒÉÏÃæµÄÄÇЩ·½Ê½¡£Õâ¸öÊÇĬÈϻᰲװµÄ¡£
Òª°²×°ÎÒÕâ¸ö×îеÄhelpÎļþ£¬Ö»ÐèÒªÖ´ÐоͿÉÒÔÁË
SQL>conn system/systempwd;
SQL>@?/sqlplus/admin/help/h ......

OracleµÄÓÅ»¯Æ÷ÓÐÁ½ÖÖÓÅ»¯·½Ê½(¶þ)

15. /*+USE_CONCAT*/
¶Ô²éѯÖеÄWHEREºóÃæµÄORÌõ¼þ½øÐÐת»»ÎªUNION  ALLµÄ×éºÏ²éѯ. (ã¶®°¡,ÏÈ´æ×Å)
ÀýÈç:
select /*+use_concat */ * from emp where deptno=10 OR empno=7788;
Execution Plan
----------------------------------------------------------
   0      SELECT STATEMENT Optimizer=CHOOSE (Cost=2 Card=2 Bytes=174)
   1    0   TABLE ACCESS (FULL) OF 'EMP' (Cost=2 Card=2 Bytes=174)
16. /*+NO_EXPAND*/
¶ÔÓÚWHEREºóÃæµÄOR »òÕßIN-LISTµÄ²éѯÓï¾ä,
NO_EXPAND½«×èÖ¹Æä»ùÓÚÓÅ»¯Æ÷¶ÔÆä½øÐÐÀ©Õ¹.
SELECT /*+NO_EXPAND*/  *  from  EMP  WHERE DEPTNO=10 AND job='MANAGER';
Execution Plan
----------------------------------------------------------
   0      SELECT STATEMENT Optimizer=CHOOSE (Cost=2 Card=1 Bytes=87)
   1    0   TABLE ACCESS (FULL) OF 'EMP' (Cost=2 Card=1 Bytes=87)
17. /*+NOWRITE*/
½ûÖ¹¶Ô²éѯ¿éµÄ²éÑ¯ÖØÐ´²Ù×÷.
18. /*+ ......

oracle¸ü¸Ä×Ö·û¼¯

ÐÞ¸Äoracle 10gµÄ×Ö·û¼¯
ÐÞ¸ÄÊý¾Ý¿â×Ö·û¼¯Îª£ºZHS16GBK
Ê×ÏÈÓÃscott&tiger&orclµÇ¼µ½sql/plus
²é¿´·þÎñÆ÷¶Ë×Ö·û¼¯
SQL > select * from
V$NLS_PARAMETERS;
Ð޸ģº
$sqlplus /nolog
SQL>conn / as sysdba
Èô
´ËʱÊý¾Ý¿â·þÎñÆ÷ÒÑÆô¶¯£¬ÔòÏÈÖ´ÐÐ SHUTDOWN IMMEDIATE Ãü
Áî¹Ø±ÕÊý¾Ý¿â·þÎñÆ÷£¬È»ºóÖ´ÐÐÒÔÏÂÃüÁî:
SQL>shutdown
immediate
SQL>STARTUP MOUNT
SQL>ALTER SYSTEM ENABLE
RESTRICTED SESSION;
SQL>ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;
SQL>ALTER
SYSTEM SET AQ_TM_PROCESSES=0;
SQL>ALTER DATABASE OPEN;
SQL>ALTER
DATABASE CHARACTER SET ZHS16GBK
*
ERROR at line 1:
ORA-12721:
operation cannot execute when other sessions are active
Èô³öÏÖÉÏÃæµÄ´íÎó£¬Ê¹ÓÃÏÂÃæ
µÄ°ì·¨½øÐÐÐ޸ģ¬Ê¹ÓÃINTERNAL_USE¿ÉÒÔÌø¹ý³¬¼¯µÄ¼ì²é£º
SQL>ALTER DATABASE CHARACTER SET
INTERNAL_USE ZHS16GBK;
SQL>SHUTDOWN IMMEDIATE
SQL>STARTUP
......

Oracle¸´ÔÓ²éѯ

1¡¢²éѯÁ½¸öÈÕÆÚÖ®¼äµÄÊý¾Ý¡£
¼ÙÉèÓбíTable1£¬Æä´´½¨±íµÄsqlÓï¾äΪ£º
create table Table1(
StationID    NUMBER(10) Primary key,
Year           NUMBER(4)  not null,
Month        NUMBER(2)  not null,
Day            NUMBER(2)  not null);
ÏÖÔÚÎÒÐèÒª²éÔÚ'2005-01-01'ÖÁ'2006-01-01'Ö®¼äµÄËùÓÐÊý¾Ý£¬Óöµ½µÄÖ÷ÒªÎÊÌâÊÇ£º±íTable1ÖеÄÈÕÆÚÐÅÏ¢·Ö±ð´æ·ÅÔÚÈý¸ö×Ö¶Î(Year,Month,Day)ÖУ¬ÔõÑùʵÏÖÕâÒ»²éÑ¯ÄØ£¿
´ð°¸ÈçÏ£º
SQL>select * from Table1 where to_date(concat(concat(concat(concat(year,'-'),lpad(month,2,0)),'-'),lpad(DAY,2,0)),'yyyy-mm-dd')
 between to_date('2005-01-01','yyyy-mm-dd') and to_date('2006-01-01','yyyy-mm-dd');
´ð°¸½âÊÍ£º
(1)ʹÓÃconcatº¯ÊýÁ¬½ÓYear,Month,DayÈý¸ö×ֶΣ¬´Ó¶ø¹¹ÔìÒ»¸öеÄ×Ö·û´®(°üº¬Äê¡¢Ô¡¢ÈÕÐÅÏ¢)£¬Ê¹Æä¸ñʽΪ£º'Äê-ÔÂ-ÈÕ'£»
(2)ʹÓÃlpadº¯Êý²¹×ãÔ·ݼ°ÌìÊý£¬Ê¹Ö®¶¼ÊǶþ룬ÕâÊÇÒòΪto_dateº¯ÊýµÄµÚÒ»¸ö²ÎÊýÊ ......

Oracle³£ÓÃÓï¾ä

--ÈçºÎÓÃgrade±íµÄ×ÊÁÏÈ¥¸üÐÂusertable±íµÄ×ÊÁÏ£¨ÓйØÁªµÄ×Ö¶Îuserid£©
 update usertable u set u.grade =
 (select g.grade from grade g where g.userid = u.userid);
 
--ÈçºÎʹ²éѯ½á¹û×Ö¶ÎÉú³ÉÐòºÅ
select rownum, t.* from sm_t_pad_new t
--ÈçºÎ¿ìËÙ×öÒ»¸öºÍÔ­±íÒ»ÑùµÄ±¸·Ý±í
 create table new_table as (select * from user);
--ÈçºÎ²é¿´Êý¾ÝÎļþµÄ´æ·Å·¾¶
select tablespace_name, file_id, bytes/1024/1024, file_name
from dba_data_files order by file_id;
--²éѯÐÕÃûÏàͬµÄÔ±¹¤µÄÐÅÏ¢
select u1.userid, u1.username from user u1,
(select username, count(*) from user group by username having count(username) > 1) u2
where u1.username = u2.username;
--¸ù¾Ýʱ¼ä²éѯ
select * from user
where create_time >= to_date('2010-4-16 00:00:00','YYYY-MM-DD HH24:mi:ss')
and create_time <= to_date('2010-4-16 12:00:00','YYYY-MM-DD HH24:mi:ss') ......
×ܼǼÊý:40319; ×ÜÒ³Êý:6720; ÿҳ6 Ìõ; Ê×Ò³ ÉÏÒ»Ò³ [1550] [1551] [1552] [1553] 1554 [1555] [1556] [1557] [1558] [1559]  ÏÂÒ»Ò³ βҳ
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ