Oracle³£ÓÃÎÊÌâ½â´ð
£¨1£©[Q]ÈçºÎ²åÈëµ¥ÒýºÅµ½Êý¾Ý¿â±íÖÐ
[A]¿ÉÒÔÓÃASCIIÂë´¦Àí£¬ÆäËüÌØÊâ×Ö·ûÈç&Ò²Ò»Ñù£¬Èç
insert into t values('i'||chr(39)||'m'); -- chr(39)´ú±í×Ö·û'
»òÕßÓÃÁ½¸öµ¥ÒýºÅ±íʾһ¸ö
or insert into t values('I''m'); -- Á½¸ö''¿ÉÒÔ±íʾһ¸ö'
£¨2£©[Q]Ëæ»ú³éȡǰNÌõ¼Ç¼µÄÎÊÌâ
[A]8iÒÔÉϰ汾
select * from (select * from tablename order by dbms_random.value) where rownum< N;
×¢£ºdbms_random°üÐèÒªÊÖ¹¤°²×°£¬Î»ÓÚ$ORACLE_HOME/rdbms/admin/dbmsrand.sql
dbms_random.value(100,200)¿ÉÒÔ²úÉú100µ½200·¶Î§µÄËæ»úÊý
£¨3£©[Q]ÔõôÑù³éÈ¡ÖØ¸´¼Ç¼
[A]select * from table t1 where t1.rowid !=
(select max(rowid) from table t2
where t1.id=t2.id and t1.name=t2.name)
»òÕß
select count(*), t.col_a,t.col_b from table t
group by col_a,col_b
having count(*)>1
Èç¹ûÏëɾ³ýÖØ¸´¼Ç¼£¬¿ÉÒ԰ѵÚÒ»¸öÓï¾äµÄselectÌæ»»Îªdelete
£¨4£©[Q]ÔõôÑùÉèÖÃ×ÔÖÎÊÂÎñ
[A]8iÒÔÉϰ汾£¬²»Ó°ÏìÖ÷ÊÂÎñ
pragma autonomous_transaction;
……
commit|rollback;
£¨5£©[Q]ÔõôÑùÔÚ¹ý³ÌÖÐÔÝÍ£Ö¸¶¨Ê±¼ä
[A]DBMS_LOCK°üµÄsleep¹ý³Ì
È磺dbms_lock.sleep(5);±íʾÔÝÍ£5Ãë¡£
£¨6£©[Q]ÔõÑù´´½¨ÁÙʱ±í
[A]8iÒÔÉϰ汾
create global temporary tablename(column list)
on commit preserve rows; --Ìá½»±£ÁôÊý¾Ý »á»°ÁÙʱ±í
on commit delete rows; --Ìύɾ³ýÊý¾Ý ÊÂÎñÁÙʱ±í
ÁÙʱ±íÊÇÏà¶ÔÓڻỰµÄ£¬±ðµÄ»á»°¿´²»µ½¸Ã»á»°µÄÊý¾Ý¡£
£¨7£©[Q]ÔõôÑùÔÚPL/SQLÖÐÖ´ÐÐDDLÓï¾ä
[A]1¡¢8iÒÔϰ汾dbms_sql°ü
2¡¢8iÒÔÉϰ汾»¹¿ÉÒÔÓÃ
execute immediate sql;
dbms_utility.exec_ddl_statement('sql');
£¨8£©[Q]ÔõôÑù»ñÈ¡IPµØÖ·
[A]·þÎñÆ÷(817ÒÔÉÏ)£ºutl_inaddr.get_host_address
¿Í»§¶Ë£ºsys_context('userenv','ip_address')
£¨9£©[Q]ÔõôÑùÔÚORACLEÖж¨Ê±ÔËÐд洢¹ý³Ì
[A]¿ÉÒÔÀûÓÃdbms_job°üÀ´¶¨Ê±ÔËÐÐ×÷Òµ£¬ÈçÖ´Ðд洢¹ý³Ì£¬Ò»¸ö¼òµ¥µÄÀý×Ó£¬Ìá½»Ò»¸ö×÷Òµ£º
VARIABLE jobno number;
BEGIN
DBMS_JOB.SUBMIT(:jobno, 'ur_procedure;',SYSDATE,'SYSDATE + 1');
commit;
END;
Ö®ºó£¬¾Í¿ÉÒÔÓÃÒÔÏÂÓï¾ä²éѯÒѾÌá½»µÄ×÷Òµ
select * from user_jobs;
£¨10£©[Q]ÔõôÑù´ÓÊý¾Ý¿âÖлñµÃ
Ïà¹ØÎĵµ£º
¹²ÐèÒª´´½¨Á½¸öÎļþÔÚͬһ¸öĿ¼Ï£º
Ò»£º
Îļþoracle_cool_backup.bat£¬ÄÚÈÝÈçÏ£º
Remark ¶¨Òåʱ¼äÈÕÆÚ±äÁ¿
set date=%date:~0,10%
set h=%time:~0,2%
set m=%time:~3,2%
set s=%time:~6,2%
set tempvar=%date%-%h%-%m%-%s%
md "c:/temp/%tempvar%/"
echo %tempvar%
sqlplus /nolog @oracle_cool_backup.sql % ......
DBAÃǾ³£»áÓöµ½Ò»¸öÕâÑùÁîÈËÍ·ÌÛµÄÎÊÌ⣺²»ÖªµÀËÔÚOracleÉÏ´´½¨ÁËÒ»¸öÓû§£¬´´½¨Ê±£¬Ã»ÓиøÕâ¸öÓû§Ö¸¶¨Ä¬Èϱí¿Õ¼ä£¬ËùÒÔÕâ¸öÓû§¾Í»á²ÉÓÃĬÈϵıí¿Õ¼ä——system±í¿Õ¼ä¡£µ¼ÖÂϵͳ±í¿Õ¼äѸËÙ±»Óû§Êý¾ÝÕ¼Âú£¬Ö±ÖÁå´»ú¡£
ÔÚ10GÖУ¬DBAÓа취±ÜÃâÕâÖÖÎÊÌâÁË——ÔÚÏßÖ¸¶¨ÏµÍ³Ä¬Èϱí¿Õ¼ä£º
ALTER DAT ......
select count(1) from dictionary;
select * from dba_data_files;
select count(1) from dba_objects t where t.owner='BESTTONE';
select * from dba_tablespaces t where t.tablespace_name='BESTTONE';
select count(1) from dba_tables t where t.owner='BESTTONE';
select t.table_name,t.comments from diction ......
Oracle spool Ó÷¨Ð¡½á[°ëת°ë¼Ó]
¹ØÓÚSPOOL(SPOOLÊÇSQLPLUSµÄÃüÁ²»ÊÇSQLÓï·¨ÀïÃæµÄ¶«Î÷¡£)
¶ÔÓÚSPOOLÊý¾ÝµÄSQL£¬×îºÃÒª×Ô¼º¶¨Òå¸ñʽ£¬ÒÔ·½±ã³ÌÐòÖ±½Óµ¼Èë,SQLÓï¾äÈ磺
select empno||','||ename||','||sal from emp;
spool³£ÓõÄÉèÖÃ
set colsep' ';¡¡¡¡¡¡ //ÓòÊä³ö·Ö¸ô·û
set echo off;¡¡¡¡¡¡¡¡//ÏÔʾstartÆô¶¯µ ......
INSERT INTO hydlsrs@remote_£ú£úh
SELECT * from hydlsrs where zzh='2'
hydlsrsΪ±íÃû¡¡£Àremote_zzhΪ¿âÃû
select * from hydlsrsΪÁí1¿âÖбíÃû£¬
²»Í¬¿âÖÐÏàͬ±í½á¹¹£¬¿ÉÒÔ¿ç¿â²åÈë¡£ÓÃÓÚ
2µØµ¹Èë±íÄÚÈÝ¡£ ......