OracleÖÐÈçºÎʵÏÖijһ×Ö¶Î×Ô¶¯Ôö¼Ó1£¿
¡¡¡¡ Èí¼þ»·¾³£º
¡¡¡¡ 1¡¢Windows NT4.0+ORACLE 8.0.4
¡¡¡¡ 2¡¢ORACLE°²×°Â·¾¶Îª£ºC:ORANT
¡¡¡¡ ʵÏÖ·½·¨£º
¡¡¡¡ ½¨Á¢Ò»¸ö×îСΪ1,×î´óΪ999999999µÄÒ»¸öÐòÁкŻá×Ô¶¯Ñ»·µÄÐòÁÐ
¡¡¡¡ create sequence ÐòÁÐÃû
¡¡¡¡ increment by 1
¡¡¡¡ start with 1
¡¡¡¡ maxvalue 999999999
¡¡¡¡ cycle;
¡¡¡¡ µ±Ïò±íÖвåÈëÊý¾Ýʱ£¬SQLÓï¾äд·¨ÈçÏ£º
¡¡¡¡ SQL> insert into ±íÃû values(ÐòÁÐÃû.nextval,ÁÐ1Öµ,ÁÐ2Öµ);
¡¡¡¡ 2.ÈçºÎ¸Ä±ä±íÖÐÁеÄÃû×Ö£¿
¡¡¡¡ Èí¼þ»·¾³£º
¡¡¡¡ 1¡¢Windows NT4.0+ORACLE 8.0.4
¡¡¡¡ 2¡¢ORACLE°²×°Â·¾¶Îª£ºC:ORANT
¡¡¡¡ ʵÏÖ·½·¨£º ¡¡¡¡SQL> create table t2(ÐÂÁÐÃû) as select * from t1; --ÒÔÐÂÃû×ÖÃüÃûÁÐÃû
¡¡¡¡ SQL> drop table t1; --ɾ³ý±í1
¡¡¡¡ SQL> rename t2 to t1;¡¡¡¡ --°Ñ±í2¸ÄÃûΪ±í1
linuxcms ÓÚ 2006-10-17 23:14:09·¢±í:
¡¡¡¡ 3.ÈçºÎɾ³ý±íÖеÄÁУ¿
¡¡¡¡ Èí¼þ»·¾³£º
¡¡¡¡ 1¡¢Windows NT4.0+ORACLE 8.0.4
¡¡¡¡ 2¡¢ORACLE°²×°Â·¾¶Îª£ºC:ORANT
¡¡¡¡ ʵÏÖ·½·¨£º ¡¡¡¡SQL> create table t2 as select from t1;¡¡¡¡--ÒÔµÚÒ»¸ö±íÖеÄijÁн¨Á¢µÚ¶þ¸öбí
¡¡¡¡ SQL> drop table t1; --ɾ³ý±í1
¡¡¡¡ SQL> rename t2 to t1;¡¡¡¡ --°Ñ±í2¸ÄÃûΪ±í1
¡¡¡¡ Oracle 8i¼°ÒÔÉÏ°æ±¾ÖУ¬¿ÉÒÔʹÓÃÒÔÏÂÓï¾ä ¡¡¡¡SQL> alter table ±í1 drop column ÁÐ1;
¡¡¡¡ 4.ÈçºÎ²éÕÒ¡¢É¾³ý±íÖÐÖظ´µÄ¼Ç¼
¡¡¡¡ Èí¼þ»·¾³£º
¡¡¡¡ 1¡¢Windows NT4.0+ORACLE 8.0.4
¡¡¡¡ 2¡¢ORACLE°²×°Â·¾¶Îª£ºC:ORANT
¡¡¡¡ ÎÊÌâÌá³ö£º
¡¡¡¡ 1¡¢µ±ÎÒÃÇÏëҪΪһ¸ö±í´´½¨Î¨Ò»Ë÷Òýʱ£¬Èç¹û¸Ã±íÓÐÖظ´µÄ¼Ç¼£¬ÔòÎÞ·¨´´½¨³É¹¦¡£
¡¡¡¡ ·½·¨ÔÀí£º
¡¡¡¡ 1¡¢OracleÖУ¬Ã¿Ò»Ìõ¼Ç¼¶¼ÓÐÒ»¸örowid£¬rowidÔÚÕû¸öÊý¾Ý¿âÖÐÊÇΨһµÄ£¬
rowidÈ·¶¨ÁËÿÌõ¼Ç¼ÊÇÔÚORACLEÖеÄÄÄÒ»¸öÊý¾ÝÎļþ¡¢¿é¡¢ÐÐÉÏ¡£
¡¡¡¡ 2¡¢ÔÚÖظ´µÄ¼Ç¼ÖУ¬¿ÉÄÜËùÓÐÁеÄÄÚÈݶ¼Ïàͬ£¬µ«rowid²»»áÏàͬ£¬ËùÒÔֻҪȷ¶¨³öÖØ
ÄÇЩ¾ßÓÐ×î´órowidµÄ¾Í¿ÉÒÔÁË£¬ÆäÓàÈ«²¿É¾³ý¡£
¡¡¡¡ 3¡¢ÒÔÏÂÓï¾äÓõ½ÁË3Ïî¼¼ÇÉ£ºrowid¡¢×Ó²éѯ¡¢±ðÃû¡£
¡¡¡¡ ʵÏÖ·½·¨£º ¡¡¡¡SQL> create table a (
¡¡¡¡ 2 bm char(4), --±àÂë
¡¡¡¡ 3 mc varchar2(20) --Ãû³Æ
¡¡¡¡ 4 )
¡¡¡¡ 5 /
¡¡¡¡ ±íÒѽ¨Á¢.
¡¡¡¡ SQL> insert into a values('1111','1111');
¡¡¡¡ SQL> insert into a values('1112','1111');
¡¡¡¡ SQL> insert into a values('1113','1111');
¡¡¡¡ SQL> insert into a values('1114','1111');
¡¡¡¡SQL> insert into a select * from a;
¡¡¡¡ ²åÈë4¸ö¼Ç¼.
¡¡¡¡ SQL> commit;
¡¡¡¡ ÍêÈ«Ìá½».
¡¡¡¡ SQL> select rowid,bm,mc from a;
¡¡¡¡ ROWID BM MC
¡¡¡¡ ------------------ ---- -------
¡¡¡¡ 000000D5.0000.0002 1111 1111
¡¡¡¡ 000000D5.0001.0002 1112 1111
¡¡¡¡ 000000D5.0002.0002 1113 1111
¡¡¡¡ 000000D5.0003.0002 1114 1111
¡¡¡¡ 000000D5.0004.0002 1111 1111
¡¡¡¡ 000000D5.0005.0002 1112 1111
¡¡¡¡ 000000D5.0006.0002 1113 1111
¡¡¡¡ 000000D5.0007.0002 1114 1111
¡¡¡¡ ²éѯµ½8¼Ç¼.
¡¡¡¡ ²é³öÖظ´¼Ç¼ ¡¡¡¡SQL> select rowid,bm,mc from a where a.rowid!=(select max(rowid) from a b where a.bm=b.bm and a.mc=b.mc);
¡¡¡¡ ROWID BM MC
¡¡¡¡ ------------------ ---- --------------------
¡¡¡¡000000D5.0000.0002 1111 1111
¡¡¡¡ 000000D5.0001.0002 1112 1111
¡¡¡¡ 000000D5.0002.0002 1113 1111
¡¡¡¡ 000000D5.0003.0002 1114 1111
¡¡¡¡ ɾ³ýÖظ´¼Ç¼ ¡¡¡¡SQL> delete from a a where a.rowid!=(select max(rowid) from a b where a.bm=b.bm and a.mc=b.mc);
¡¡¡¡ ɾ³ý4¸ö¼Ç¼.
¡¡¡¡ SQL> select rowid,bm,mc from a;
¡¡¡¡ ROWID BM MC
¡¡¡¡ ------------------ ---- --------------------
¡¡¡¡ 000000D5.0004.0002 1111 1111
¡¡¡¡ 000000D5.0005.0002 1112 1111
¡¡¡¡ 000000D5.0006.0002 1113 1111
¡¡¡¡ 000000D5.0007.0002 1114 1111
¡¡¡¡ 5.²éÕÒa±íÖÐÓУ¬¶øÔÚb±íÖÐûÓеļǼ
¡¡¡¡ Èí¼þ»·¾³£º
¡¡¡¡ 1¡¢Windows NT4.0+ORACLE 8.0.4
¡¡¡¡ 2¡¢ORACLE°²×°Â·¾¶Îª£ºC:ORANT
¡¡¡¡ ʵÏÖ·½·¨£º ¡¡¡¡SQL> create table a (
¡¡¡¡ 2 bm char(4), --±àÂë
¡¡¡¡ 3 mc varchar2(20) --Ãû³Æ
¡¡¡¡ 4 )
¡¡¡¡ 5 /
¡¡¡¡ ±íÒѽ¨Á¢.
¡¡¡¡ SQL> insert into a values('1111','1111');
¡¡¡¡ SQL> insert into a values('1112','1111');
¡¡¡¡ SQL> insert into a values('1113','1111');
¡¡¡¡ SQL> insert into a values('1114','1111');
¡¡¡¡ SQL> insert into a values('1115','1111');
¡¡¡¡SQL> create table b as select * from a where 1=2;
¡¡¡¡ ±íÒѽ¨Á¢.
¡¡¡¡ SQL> insert into b values('1111','1111');
¡¡¡¡ SQL> insert into b values('1112','1111');
¡¡¡¡ SQL> insert into b values('1113','1111');
¡¡¡¡ SQL> insert into b values('1114','1111');
¡¡¡¡SQL> commit;
¡¡¡¡ ÍêÈ«Ìá½».
¡¡¡¡SQL> select * from a;
¡¡¡¡ BM MC
¡¡¡¡ ---- --------------------
¡¡¡¡ 1111 1111
¡¡¡¡ 1112 1111
¡¡¡¡ 1113 1111
¡¡¡¡ 1114 1111
¡¡¡¡ 1115 1111
¡¡¡¡ SQL> select * from b;
¡¡¡¡ BM MC
¡¡¡¡ ---- --------------------
¡¡¡¡ 1111 1111
¡¡¡¡ 1112 1111
¡¡¡¡ 1113 1111
¡¡¡¡ 1114 1111
¡¡¡¡ SQL> select bm from a where not exists (select bm from b where a.bm=b.bm);
¡¡¡¡ BM MC
¡¡¡¡ ---- --------------------
¡¡¡¡ 1115 1111
¡¡¡¡ 6.²é¿´±¾Óû§Ïµĸ÷ÖÖ¶ÔÏóµÄSQL½Å±¾
¡¡¡¡ Èí¼þ»·¾³£º
¡¡¡¡ 1¡¢Windows NT4.0+ORACLE 8.0.4
¡¡¡¡ 2¡¢ORACLE°²×°Â·¾¶Îª£ºC:ORANT
¡¡¡¡ SQLÓï¾ä£º
¡¡¡¡ ±í£º
¡¡ select * from cat;
¡¡ select * from tab;
¡¡ select table_name from user_tables;
¡¡¡¡ ÊÓͼ£º
¡¡ select text from user_views where view_name=upper('&view_name');
¡¡¡¡ Ë÷Òý£º
¡¡ select index_name,table_owner,table_name,tablespace_name,status from
¡¡¡¡ ´¥·¢Æ÷£º
¡¡ select trigger_name,trigger_type,table_owner,table_name,status from
¡¡¡¡ ¿ìÕÕ£º
¡¡ select owner,name,master,table_name,last_refresh,next from user_snapshots
¡¡¡¡ ͬÒå´Ê£º
¡¡ select * from syn;
¡¡¡¡ ÐòÁУº
¡¡ select * from seq;
¡¡¡¡ Êý¾Ý¿âÁ´Â·£º
¡¡ select * from user_db_links;
¡¡¡¡ Ô¼ÊøÏÞÖÆ£º
¡¡ select TABLE_NAME,CONSTRAINT_NAME,SEARCH_CONDITION,STATUS from
¡¡¡¡ ±¾Óû§¶ÁÈ¡ÆäËûÓû§¶ÔÏóµÄȨÏÞ£º
¡¡ select * from user_tab_privs;
¡¡¡¡ ±¾Óû§ËùÓµÓеÄϵͳȨÏÞ£º
¡¡ select * from user_sys_privs;
¡¡¡¡ Óû§£º
¡¡ select * from all_users order by user_id;
¡¡¡¡±í¿Õ¼äÊ£Óà×ÔÓÉ¿Õ¼äÇé¿ö£º
¡¡ select tablespace_name,sum(bytes) ×Ü×Ö½ÚÊý,max(bytes),count(*) from
dba_free_space group by tablespace_name£»
¡¡¡¡ Êý¾Ý×ֵ䣺
¡¡ select table_name from dict order by table_name;
¡¡¡¡ Ëø¼°×ÊÔ´ÐÅÏ¢£º
¡¡ select * from v$lock;²»°üÀ¨DDLËø
¡¡¡¡ Êý¾Ý¿â×Ö·û¼¯£º
¡¡ select name,value$ from props$ where name='NLS_CHARACTERSET';
¡¡¡¡ inin.ora²ÎÊý£º
¡¡ select name,value from v$parameter order by name;
¡¡¡¡ SQL¹²Ïí³Ø£º
¡¡ select sql_text from v$sqlarea;
¡¡¡¡ Êý¾Ý¿â£º
¡¡ select * from v$database
¡¡¡¡ ¿ØÖÆÎļþ£º
¡¡ select * from V$controlfile;
¡¡¡¡ ÖØ×öÈÕÖ¾ÎļþÐÅÏ¢£º
¡¡ select * from V$logfile;
¡¡¡¡ À´×Ô¿ØÖÆÎļþÖеÄÈÕÖ¾ÎļþÐÅÏ¢£º
¡¡ select * from V$log;
¡¡¡¡ À´×Ô¿ØÖÆÎļþÖеÄÊý¾ÝÎļþÐÅÏ¢£º
¡¡ select * from V$datafile;
¡¡¡¡ NLS²ÎÊýµ±Ç°Öµ£º
¡¡ select * from V$nls_parameters;
¡¡¡¡ ORACLE°æ±¾ÐÅÏ¢£º
¡¡ select * from v$version;
¡¡¡¡ ÃèÊöºǫ́½ø³Ì£º
¡¡ select * from v$bgprocess;
¡¡¡¡ ²é¿´°æ±¾ÐÅÏ¢£º
¡¡ select * from product_component_version;
¡¡¡¡ 17.ÈçºÎÔÚPL/SQLÖжÁдÎļþ£¿
¡¡¡¡ Èí¼þ»·¾³£º
¡¡¡¡ 1¡¢·þÎñÆ÷¶Ë£ºWindows NT4.0+ORACLE 8.0.4
¡¡¡¡ 2¡¢ORACLE°²×°Â·¾¶Îª£ºC:ORANT
¡¡¡¡ ʵÏÖ·½·¨£º
¡¡¡¡ PL/SQL 3.3ÒÔÉϵİ汾ÖУ¬UTL_FILE°üÔÊÐíÓû§Í¨¹ýPL/SQL¶Áд²Ù×÷ϵͳÎļþ¡£ÈçÏ£º
¡¡¡¡ declare
¡¡¡¡ file_handle UTL_FILE.FILE_TYPE;
¡¡¡¡ begin
¡¡¡¡ file_handle := UTL_FILE.FOPEN('/tmp', 'ÎļþÃû', 'w');
¡¡¡¡ UTL_FILE.PUTF(file_handle, 'дÈëµÄÐÅÏ¢ ');
¡¡¡¡ UTL_FILE.FCLOSE(file_handle);
¡¡¡¡ exception
¡¡¡¡ WHEN utl_file.invalid_path THEN
¡¡¡¡ raise_application_error(-20000, 'ERROR: Invalid path for file or path not in
¡¡¡¡ end;
¡¡¡¡ PutF()¹ý³ÌÓÃÀ´ÒÔÖ¸¶¨¸ñʽ°ÑÎı¾Ð´ÈëÒ»¸öÎļþ
¡¡¡¡ Put_Line()¹ý³Ì°ÑÒ»¸öÖ¸¶¨µÄ×Ö·û´®Ð´ÈëÎļþ²¢ÔÚÎļþÖпªÊ¼ÐµÄÒ»ÐÐ
¡¡¡¡ 18.ÔõÑù¼ÆËã±íÖеļǼÊý£¿
¡¡¡¡ ϵͳ»·¾³£º
¡¡¡¡ 1¡¢²Ù×÷ϵͳ£ºWindows 2000
¡¡¡¡ 2¡¢Êý¾Ý¿â£º¡¡Oracle 8i R2 (8.1.6) for NT ÆóÒµ°æ
¡¡¡¡ 3¡¢°²×°Â·¾¶£ºC:ORACLE
¡¡¡¡ ʵÏÖ·½·¨£º
¡¡¡¡ ²é¿´µ±Ç°Óû§ÏÂÓÐʲô¶ÔÏó£¨±í¡¢ÊÓͼ¡¢Í¬Òå´Ê¡¢¿ìÕÕ£© ¡¡¡¡SQL> select * from tab;
¡¡¡¡ ²é¿´±í½á¹¹ ¡¡¡¡SQL> desc ±íÃû
¡¡¡¡ ²é¿´±íÖмǼÊý ¡¡¡¡SQL> select count(*) from ±íÃû;
¡¡¡¡SQL> select count(rowid) from ±íÃû;
¡¡¡¡ 19.ÔõÑù²é¿´±íµÄ½á¹¹£¿
¡¡¡¡ ϵͳ»·¾³£º
¡¡¡¡ 1¡¢²Ù×÷ϵͳ£ºWindows 2000
¡¡¡¡ 2¡¢Êý¾Ý¿â£º¡¡Oracle 8i R2 (8.1.6) for NT ÆóÒµ°æ
¡¡¡¡ 3¡¢°²×°Â·¾¶£ºC:ORACLE
¡¡¡¡ ʵÏÖ·½·¨£º
¡¡¡¡ ²é¿´µ±Ç°Óû§ÏÂÓÐʲô¶ÔÏó£¨±í¡¢ÊÓͼ¡¢Í¬Òå´Ê¡¢¿ìÕÕ£© ¡¡¡¡SQL> select * from tab;
¡¡¡¡ ²é¿´±í½á¹¹ ¡¡¡¡SQL> describe ±íÃû
¡¡¡¡ ¼òдÒÔÉÏÃüÁî ¡¡¡¡SQL> desc ±íÃû
¡¡¡¡ 20.ÈçºÎÓÃSQLÉú³ÉSQLÅú´¦ÀíÎļþ£¿
¡¡¡¡ Èí¼þ»·¾³£º
¡¡¡¡ 1¡¢Windows NT4.0+ORACLE 8.0.4
¡¡¡¡ 2¡¢ORACLE°²×°Â·¾¶Îª£ºC:ORANT
¡¡¡¡ ÎÊÌâÌá³ö£º
¡¡¡¡ 1¡¢Óû§ÐèÒª¶ÔÊý¾Ý¿âÓû§ÏµÄÿһÕÅ±í¶¼Ö´ÐÐÒ»¸öÏàͬµÄSQL²Ù×÷£¬Õâʱ£¬Ò»±é¡¢Ò»±é
¡¡¡¡ ʵÏÖ·½·¨£º ¡¡¡¡SQL> set heading off --½ûÖ¹Êä³öÁбêÌâ
¡¡¡¡ SQL> set feedback off --½ûÖ¹ÏÔʾ×îºóÒ»ÐеļÆÊý·´À¡ÐÅÏ¢
¡¡¡¡ Áгöµ±Ç°Óû§ÏÂËùÓÐͬÒå´ÊµÄ¶¨Ò壬¿ÉÓÃÀ´²âÊÔͬÒå´ÊµÄÕæʵ´æÔÚÐÔ
¡¡¡¡ select 'desc '||tname from tab where tabtype='SYNONYM';
¡¡¡¡ ²éѯµ±Ç°Óû§ÏÂËùÓбíµÄ¼Ç¼Êý
¡¡¡¡ select 'select ''||tname||'',count(*) from '||tname||';' from tab where
¡¡¡¡ °ÑËùÓзûºÏÌõ¼þµÄ±íµÄselectȨÏÞÊÚÓèΪpublic
¡¡¡¡ select 'grant select on '||table_name||' to public;' from user_tables where ¡¶
¡¡¡¡ ɾ³ýÓû§Ï¸÷ÖÖ¶ÔÏó
¡¡¡¡ select 'drop '||tabtype||' '||tname from tab;
¡¡¡¡ ɾ³ý·ûºÏÌõ¼þÓû§ ¡¡¡¡select 'drop user '||username||' cascade;' from all_users where user_id>25;
¡¡¡¡ ¿ìËÙ±àÒëËùÓÐÊÓͼ
¡¡¡¡ ----µ±ÔÚ°ÑÊý¾Ý¿âµ¹È뵽еķþÎñÆ÷ÉϺó(Êý¾Ý¿âÖؽ¨)£¬ÐèÒª½«ÊÓͼÖØбàÒëÒ»±é£¬
¡¡¡¡ ----ÒòΪ¸Ã±í¿Õ¼äÊÓͼµ½ÆäËü±í¿Õ¼äµÄ±íµÄÁ¬½Ó»á³öÏÖÎÊÌ⣬¿ÉÒÔÀûÓÃPL/SQLµÄÓïÑÔÌØÐÔ
£¬¿ìËÙ±àÒë¡£
¡¡¡¡È»ºóÖ´ÐÐON.SQL¼´¿É¡£ ¡¡¡¡SQL> @ON.SQL
¡¡¡¡ µ±È»£¬ÊÚȨºÍ´´½¨Í¬Òå´ÊÒ²¿ÉÒÔ¿ìËÙ½øÐУ¬È磺 ¡¡¡¡SQL> SELECT 'GRANT SELECT ON '||TNAME||' TO Óû§Ãû;' FROM TAB;
¡¡¡¡ SQL> SELECT 'CREATE SYNONYM '||TNAME||' FOR Óû§Ãû.'||TNAME||';' FROM TAB;