Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö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

Oracle ±Ê¼Ç


          µÚ1Ò³
 
1. Oracle µÄʹÓÃ
1.1. SQLPLUS µÄÃüÁî
³õʼ»¯±íµÄλÖãº
set
NLS_LANG=american_america.us7ascii  (ÉèÖñàÂë²Å¿ÉÒÔʹÓÃÏÂÃæ½Å±¾)
cd
$ORACLE_HOME/rdbms   cd demo     summit2.sql
*********************************
ÎÒÃÇĿǰʹÓõÄÊÇoralce 9i  
9201 °æ±¾
select * from
v$version;
 
»Ö¸´Á·Ï°±íÃüÁ
sqlplus  **/** @summit2.sql   //shellÒªÔÚÕâ¸öÎļþµÄλÖá£
 
 
µÇ½ oracleµÄÃüÁ
sqlplus   Óû§Ãû/ÃÜÂë
 
show   user        
ÏÔʾµ±Ç°µÇ½µÄÉí·Ý.
set    pause on
set    pause off  
·ÖÒ³ÏÔʾ.
 
oracle ÖÐĬÈÏÈÕÆÚºÍ×Ö·ûÊÇ×ó¶ÔÆë£¬Êý×ÖÊÇÓÒ¶ÔÆë
table or view
does  not 
exist ; ±í»òʾͼ²»´æÔÚ
 
edit ÃüÁîÓÃÓÚ×Ô¶¯´ò¿ªvi Ð޸ĸÕÐÞÖ´ÐйýµÄ sql µÄÃüÁî¡£
Ð޸ķ½·¨¶þ£º
l  3 Ïȶ¨Î»µ½ÐР & ......

oracle ÔöÁ¿±¸·Ý½Å±¾


    OS :RHEL AS 4 oracle 10g
    0±¸·Ý½Å±¾
    #!/bin/bash
    # incremental level 0 backup script
    source /home/oracle/.bash_profile
    current_day=`date +%Y%m%d`
    mkdir /home/oracle/RMANBACKUP/$current_day
    rman target  / <<EOF
    run
    {
    CONFIGURE CONTROLFILE AUTOBACKUP ON;
    CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/home/oracle/RMANBACKUP/$current_day/PID-%F';
    allocate channel dev1 type disk;
    allocate channel dev2 type disk;
    allocate channel dev3 type disk;
    backup incremental level 0 tag='db0'
    format '/home/oracle/RMANBACKUP/$current_day/%n_%T_%U' database;
    sql 'alter system archive log current';
    backu ......

¡¾×ªÌû¡¿SQL Oracleɾ³ýÖØ¸´¼Ç¼

1.Oracleɾ³ýÖØ¸´¼Ç¼.
ɾ³ý±íÖжàÓàµÄÖØ¸´¼Ç¼£¬Öظ´¼Ç¼ÊǸù¾Ýµ¥¸ö×ֶΣ¨peopleId£©À´Åжϣ¬Ö»ÁôÓÐrowid×îСµÄ¼Ç¼.
delete from people
where peopleId  in (select  peopleId  from people  group  by  peopleId   having  count(peopleId) > 1)
and rowid not in (select min(rowid) from  people  group by peopleId  having count(peopleId )>1)
ɾ³ý±íÖжàÓàµÄÖØ¸´¼Ç¼£¨¶à¸ö×ֶΣ©£¬Ö»ÁôÓÐrowid×îСµÄ¼Ç¼
delete from vitae a
where (a.peopleId,a.seq) in  (select peopleId,seq from vitae group by peopleId,seq having count(*) > 1)
and rowid not in (select min(rowid) from vitae group by peopleId,seq having count(*)>1)
================================
´Ë·½·¨¿ÉÒÔÊÊÓÃÓÚsql ,oracle
declare @max integer,@id integer
declare cur_rows cursor local for select Ö÷×Ö¶Î,count(*) from ±íÃû group by Ö÷×Ö¶Î having count(*) >£» 1
open cur_rows
fetch cur_rows into @id,@max
while @@fetch_status=0
begin
select @max = @max -1
set rowcou ......

¡¾×ªÌû¡¿SQL Oracleɾ³ýÖØ¸´¼Ç¼

1.Oracleɾ³ýÖØ¸´¼Ç¼.
ɾ³ý±íÖжàÓàµÄÖØ¸´¼Ç¼£¬Öظ´¼Ç¼ÊǸù¾Ýµ¥¸ö×ֶΣ¨peopleId£©À´Åжϣ¬Ö»ÁôÓÐrowid×îСµÄ¼Ç¼.
delete from people
where peopleId  in (select  peopleId  from people  group  by  peopleId   having  count(peopleId) > 1)
and rowid not in (select min(rowid) from  people  group by peopleId  having count(peopleId )>1)
ɾ³ý±íÖжàÓàµÄÖØ¸´¼Ç¼£¨¶à¸ö×ֶΣ©£¬Ö»ÁôÓÐrowid×îСµÄ¼Ç¼
delete from vitae a
where (a.peopleId,a.seq) in  (select peopleId,seq from vitae group by peopleId,seq having count(*) > 1)
and rowid not in (select min(rowid) from vitae group by peopleId,seq having count(*)>1)
================================
´Ë·½·¨¿ÉÒÔÊÊÓÃÓÚsql ,oracle
declare @max integer,@id integer
declare cur_rows cursor local for select Ö÷×Ö¶Î,count(*) from ±íÃû group by Ö÷×Ö¶Î having count(*) >£» 1
open cur_rows
fetch cur_rows into @id,@max
while @@fetch_status=0
begin
select @max = @max -1
set rowcou ......

ORACLE+SQLÐÔÄÜÓÅ»¯ÏµÁÐ

ORACLE SQLÐÔÄÜÓÅ»¯ÏµÁÐ
 
1. ·ÃÎÊTableµÄ·½Ê½
ORACLE ²ÉÓÃÁ½ÖÖ·ÃÎʱíÖмǼµÄ·½Ê½:
a. È«±íɨÃè
È«±íɨÃè¾ÍÊÇ˳ÐòµØ·ÃÎʱíÖÐÿÌõ¼Ç¼. ORACLE²ÉÓÃÒ»´Î¶ÁÈë¶à¸öÊý¾Ý¿é(database block)µÄ·½Ê½ÓÅ»¯È«±íɨÃè.
b. ͨ¹ýROWID·ÃÎʱí
Äã¿ÉÒÔ²ÉÓûùÓÚROWIDµÄ·ÃÎÊ·½Ê½Çé¿ö,Ìá¸ß·ÃÎʱíµÄЧÂÊ, , ROWID°üº¬Á˱íÖмǼµÄÎïÀíλÖÃÐÅÏ¢..ORACLE²ÉÓÃË÷Òý(INDEX)ʵÏÖÁËÊý¾ÝºÍ´æ·ÅÊý¾ÝµÄÎïÀíλÖÃ(ROWID)Ö®¼äµÄÁªÏµ. ͨ³£Ë÷ÒýÌṩÁË¿ìËÙ·ÃÎÊROWIDµÄ·½·¨,Òò´ËÄÇЩ»ùÓÚË÷ÒýÁеIJéѯ¾Í¿ÉÒԵõ½ÐÔÄÜÉϵÄÌá¸ß.
 
2. ¹²ÏíSQLÓï¾ä
ΪÁ˲»Öظ´½âÎöÏàͬµÄSQLÓï¾ä,ÔÚµÚÒ»´Î½âÎöÖ®ºó, ORACLE½«SQLÓï¾ä´æ·ÅÔÚÄÚ´æÖÐ.Õâ¿éλÓÚϵͳȫ¾ÖÇøÓòSGA(system global area)µÄ¹²Ïí³Ø(shared buffer pool)ÖеÄÄÚ´æ¿ÉÒÔ±»ËùÓеÄÊý¾Ý¿âÓû§¹²Ïí. Òò´Ë,µ±ÄãÖ´ÐÐÒ»¸öSQLÓï¾ä(ÓÐʱ±»³ÆÎªÒ»¸öÓαê)ʱ,Èç¹ûËüºÍ֮ǰµÄÖ´ÐйýµÄÓï¾äÍêÈ«Ïàͬ, ORACLE¾ÍÄܺܿì»ñµÃÒѾ­±»½âÎöµÄÓï¾äÒÔ¼°×îºÃµÄÖ´Ðз¾¶. ORACLEµÄÕâ¸ö¹¦ÄÜ´ó´óµØÌá¸ßÁËSQLµÄÖ´ÐÐÐÔÄܲ¢½ÚÊ¡ÁËÄÚ´æµÄʹÓÃ.
¿ÉϧµÄÊÇORACLEÖ»¶Ô¼òµ¥µÄ±íÌṩ¸ßËÙ»º³å(cache buffering) ,Õâ¸ö¹¦Äܲ¢²»ÊÊÓÃÓÚ¶à±íÁ¬½Ó²éѯ.
Êý¾Ý¿â¹ÜÀíÔ±±ØÐëÔÚinit.oraÖÐΪÕâ¸öÇ ......

ORACLE+SQLÐÔÄÜÓÅ»¯ÏµÁÐ

ORACLE SQLÐÔÄÜÓÅ»¯ÏµÁÐ
 
1. ·ÃÎÊTableµÄ·½Ê½
ORACLE ²ÉÓÃÁ½ÖÖ·ÃÎʱíÖмǼµÄ·½Ê½:
a. È«±íɨÃè
È«±íɨÃè¾ÍÊÇ˳ÐòµØ·ÃÎʱíÖÐÿÌõ¼Ç¼. ORACLE²ÉÓÃÒ»´Î¶ÁÈë¶à¸öÊý¾Ý¿é(database block)µÄ·½Ê½ÓÅ»¯È«±íɨÃè.
b. ͨ¹ýROWID·ÃÎʱí
Äã¿ÉÒÔ²ÉÓûùÓÚROWIDµÄ·ÃÎÊ·½Ê½Çé¿ö,Ìá¸ß·ÃÎʱíµÄЧÂÊ, , ROWID°üº¬Á˱íÖмǼµÄÎïÀíλÖÃÐÅÏ¢..ORACLE²ÉÓÃË÷Òý(INDEX)ʵÏÖÁËÊý¾ÝºÍ´æ·ÅÊý¾ÝµÄÎïÀíλÖÃ(ROWID)Ö®¼äµÄÁªÏµ. ͨ³£Ë÷ÒýÌṩÁË¿ìËÙ·ÃÎÊROWIDµÄ·½·¨,Òò´ËÄÇЩ»ùÓÚË÷ÒýÁеIJéѯ¾Í¿ÉÒԵõ½ÐÔÄÜÉϵÄÌá¸ß.
 
2. ¹²ÏíSQLÓï¾ä
ΪÁ˲»Öظ´½âÎöÏàͬµÄSQLÓï¾ä,ÔÚµÚÒ»´Î½âÎöÖ®ºó, ORACLE½«SQLÓï¾ä´æ·ÅÔÚÄÚ´æÖÐ.Õâ¿éλÓÚϵͳȫ¾ÖÇøÓòSGA(system global area)µÄ¹²Ïí³Ø(shared buffer pool)ÖеÄÄÚ´æ¿ÉÒÔ±»ËùÓеÄÊý¾Ý¿âÓû§¹²Ïí. Òò´Ë,µ±ÄãÖ´ÐÐÒ»¸öSQLÓï¾ä(ÓÐʱ±»³ÆÎªÒ»¸öÓαê)ʱ,Èç¹ûËüºÍ֮ǰµÄÖ´ÐйýµÄÓï¾äÍêÈ«Ïàͬ, ORACLE¾ÍÄܺܿì»ñµÃÒѾ­±»½âÎöµÄÓï¾äÒÔ¼°×îºÃµÄÖ´Ðз¾¶. ORACLEµÄÕâ¸ö¹¦ÄÜ´ó´óµØÌá¸ßÁËSQLµÄÖ´ÐÐÐÔÄܲ¢½ÚÊ¡ÁËÄÚ´æµÄʹÓÃ.
¿ÉϧµÄÊÇORACLEÖ»¶Ô¼òµ¥µÄ±íÌṩ¸ßËÙ»º³å(cache buffering) ,Õâ¸ö¹¦Äܲ¢²»ÊÊÓÃÓÚ¶à±íÁ¬½Ó²éѯ.
Êý¾Ý¿â¹ÜÀíÔ±±ØÐëÔÚinit.oraÖÐΪÕâ¸öÇ ......

JAVAÖÐOracleȡֵ

package com.svse.dao;
import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
public class UserDAO {
/*
* javaµ÷Óô洢¹ý³Ì
*/
public int addUser(String username,int userage)
{
Connection conn = null;
int userid =0;
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
conn = DriverManager.getConnection("jdbc:oracle:thin:@192.168.13.142:1521:ORCL","scott","tiger");
//µ÷Óùý³Ì
CallableStatement cs = conn.prepareCall("{ call proc_addUser(?,?,?) }");
cs.setString(1, username);
cs.setInt(2, userage);
//¶ÔÓÚÊä³ö²ÎÊý ÄÇôÐèÒª»ñÈ¡ËüµÄÖµ
//1 ÐèҪע²á¸Ã²ÎÊýµÄ ÀàÐÍ
cs.registerOutParameter(3, java.sql.Types.INTEGER);
//µ÷Óô洢¹ý³Ì
cs.execute();
//»ñÈ¡´æ´¢µÄÊä³ö²ÎÊý
userid = cs.getInt(3);
conn.close();

} catch (Exception e) {
e.printStackTrace();
}
return userid;


}

public static void main(String[] args) {
UserDAO dao = new User ......

JAVAÖÐOracleȡֵ

package com.svse.dao;
import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
public class UserDAO {
/*
* javaµ÷Óô洢¹ý³Ì
*/
public int addUser(String username,int userage)
{
Connection conn = null;
int userid =0;
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
conn = DriverManager.getConnection("jdbc:oracle:thin:@192.168.13.142:1521:ORCL","scott","tiger");
//µ÷Óùý³Ì
CallableStatement cs = conn.prepareCall("{ call proc_addUser(?,?,?) }");
cs.setString(1, username);
cs.setInt(2, userage);
//¶ÔÓÚÊä³ö²ÎÊý ÄÇôÐèÒª»ñÈ¡ËüµÄÖµ
//1 ÐèҪע²á¸Ã²ÎÊýµÄ ÀàÐÍ
cs.registerOutParameter(3, java.sql.Types.INTEGER);
//µ÷Óô洢¹ý³Ì
cs.execute();
//»ñÈ¡´æ´¢µÄÊä³ö²ÎÊý
userid = cs.getInt(3);
conn.close();

} catch (Exception e) {
e.printStackTrace();
}
return userid;


}

public static void main(String[] args) {
UserDAO dao = new User ......

oracle 10gÊý¾Ý¿â±¸·ÝÓ뻹ԭ×ܽá(×ªÔØ£©

1.Êý¾Ý¿â¹éµµÄ£Ê½:
        * ·Ç¹éµµÄ£Ê½:µ±Êý¾Ý¿âÊý¾ÝÖ»¶Á²»»á¸Ä±äʱ,Êý¾Ý²»»á¸Ä±ä,Êý¾Ý¿âÊʺÏÓ÷ǹ鵵ģʽ,                     ÕâÑùÌá¸ßÐÔÄÜ
        * ¹éµµÄ£Ê½:¶ÔÓÚÊý¾Ý¿âÊý¾Ý¾­³£±ä¶¯,Êý¾Ý¿â×îºÃÓù鵵ģʽ,ÕâÑù¿ÉÒÔ¾¡Á¿±ÜÃâÊý¾Ý¿â                   Êý¾Ý¶ªÊ§,ʹ³öÏÖÎÊÌâʱÔÖº¦½µµ½×îµÍ
2.·Ç¹éµµÄ£Ê½Óë¹éµµÄ£Ê½¼äµÄÇл»(ÔÚÃüÁî´°¿ÚÏÂ):
        @¼ì²éµ±Ç°ÈÕÖ¾²Ù×÷ģʽ
              f:\>sqlplus sys/dba as sysdba
              Á¬½ÓÊý¾Ý¿â
              sql>select log_mode from v$database;
    &n ......
×ܼǼÊý:3994; ×ÜÒ³Êý:666; ÿҳ6 Ìõ; Ê×Ò³ ÉÏÒ»Ò³ [388] [389] [390] [391] 392 [393] [394] [395] [396] [397]  ÏÂÒ»Ò³ βҳ
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ