Creating a temporary table to hold values waiting to be submitted

Hello all,
I have a problem. I am creating an application for the chair of a department at school. When the chair is creating a list of courses that will end up being the courses offered for the upcoming semester, he will need to be able to add/remove courses from a temporary table and then when he feels it the right course plan he can submit that temporary table and then it will go into the permanent table. How can I create a temporary table where the values will get removed once it is submitted or how do i go about doing this.

You can use APEX_COLLECTIONS and its methods.  See http://docs.oracle.com/cd/E23903_01/doc/doc.41/e21676/apex_collection.htm

Similar Messages

  • Deadlock with CREATE GLOBAL TEMPORARY TABLE

    I got this error
    ORA-00604: error occurred at recursive SQL level 1
    ORA-00060: deadlock detected while waiting for resource
    while trying to create global temporary table.
    Table creation command:
    CREATE GLOBAL TEMPORARY TABLE ITUSER.T_0091FBDG ("GOD" char(4) DEFAULT (' ') NOT NULL,"UNKUM" number(10,0) DEFAULT (0) NOT NULL,[a lot of other fields]) ON COMMIT PRESERVE ROWS
    There is no outer references in command. So does somebody know where does deadlock come from?
    I'm using Oracle 10g.
    Edited by: LeopoldStoch on Apr 13, 2010 7:04 AM

    I have grabbed log files. But it make me even more curious. Here it is:
    alert_itdb.log
    Thread 1 advanced to log sequence 253 (LGWR switch)
    Current log# 1 seq# 253 mem# 0: C:\ORACLE\PRODUCT\10.2.0\ORADATA\ITDB\REDO01.LOG
    Tue Apr 13 10:53:09 2010
    Thread 1 advanced to log sequence 254 (LGWR switch)
    Current log# 2 seq# 254 mem# 0: C:\ORACLE\PRODUCT\10.2.0\ORADATA\ITDB\REDO02.LOG
    Tue Apr 13 10:55:32 2010
    Thread 1 advanced to log sequence 255 (LGWR switch)
    Current log# 3 seq# 255 mem# 0: C:\ORACLE\PRODUCT\10.2.0\ORADATA\ITDB\REDO03.LOG
    Tue Apr 13 10:55:49 2010
    ORA-00060: Deadlock detected. More info in file c:\oracle\product\10.2.0\admin\itdb\udump\itdb_ora_3868.trc.
    Tue Apr 13 11:01:58 2010
    Thread 1 advanced to log sequence 256 (LGWR switch)
    Current log# 1 seq# 256 mem# 0: C:\ORACLE\PRODUCT\10.2.0\ORADATA\ITDB\REDO01.LOG
    Tue Apr 13 11:03:29 2010
    Thread 1 advanced to log sequence 257 (LGWR switch)
    Current log# 2 seq# 257 mem# 0: C:\ORACLE\PRODUCT\10.2.0\ORADATA\ITDB\REDO02.LOG
    Tue Apr 13 11:14:16 2010
    itdb_ora_3868.trc
    Dump file c:\oracle\product\10.2.0\admin\itdb\udump\itdb_ora_3868.trc
    Tue Apr 13 10:55:48 2010
    ORACLE V10.2.0.4.0 - Production vsnsta=0
    vsnsql=14 vsnxtr=3
    Oracle Database 10g Release 10.2.0.4.0 - Production
    Windows NT Version V5.2 Service Pack 2
    CPU : 2 - type 586, 1 Physical Cores
    Process Affinity : 0x00000000
    Memory (Avail/Total): Ph:3568M/8188M, Ph+PgF:7889M/12090M, VA:579M/2799M
    Instance name: itdb
    Redo thread mounted by this instance: 1
    Oracle process number: 18
    Windows thread id: 3868, image: ORACLE.EXE (SHAD)
    *** 2010-04-13 10:55:48.874
    *** ACTION NAME:() 2010-04-13 10:55:48.811
    *** MODULE NAME:(5436,20100413105316,82100) 2010-04-13 10:55:48.811
    *** SERVICE NAME:(ITDB) 2010-04-13 10:55:48.811
    *** SESSION ID:(145.52602) 2010-04-13 10:55:48.811
    DEADLOCK DETECTED ( ORA-00060 )
    [Transaction Deadlock]
    The following deadlock is not an ORACLE error. It is a
    deadlock due to user error in the design of an application
    or from issuing incorrect ad-hoc SQL. The following
    information may aid in determining the deadlock:
    Deadlock graph:
    ---------Blocker(s)-------- ---------Waiter(s)---------
    Resource Name process session holds waits process session holds waits
    TX-00080011-0000198d 18 145 X 17 158 S
    TX-0006001c-0000192d 17 158 X 18 145 S
    session 145: DID 0001-0012-00000164 session 158: DID 0001-0011-000005F5
    session 158: DID 0001-0011-000005F5 session 145: DID 0001-0012-00000164
    Rows waited on:
    Session 158: obj - rowid = 00000000 - D/////AACAAAKy6AAA
    (dictionary objn - 0, file - 2, block - 44218, slot - 0)
    Session 145: obj - rowid = 00000000 - D/////AACAAAABJAAA
    (dictionary objn - 0, file - 2, block - 73, slot - 0)
    Information on the OTHER waiting sessions:
    Session 158:
    pid=17 serial=2727 audsid=241067 user: 60/ITUSER
    O/S info: user: VSC03\it_appsrv, term: VSC03, ospid: 2328:2640, machine: WORKGROUP\VSC03
    program: AppServer.exe
    client info: ELIZ-041.R#046IKSANOV.RIKSANOV.VSC03:8223.2328.5-1-2600.IT_APPSR
    application name: 5436,20100413105322,82000, hash value=3107059750
    Current SQL Statement:
    CREATE GLOBAL TEMPORARY TABLE ITUSER.T_009EFBDN ("GOD" char(4) DEFAULT (' ') NOT NULL,"UNKUM" number(10,0) DEFAULT (0) NOT NULL,"CENA" number(15,5) DEFAULT (0) NOT NULL,"EDI" number(3,0) NULL,"EDI2" number(3,0) NULL,"KOL" number(14,5) DEFAULT (0) NOT NULL,"KOL2" number(14,5) DEFAULT (0) NOT NULL,"SUMMA" number(16,2) DEFAULT (0) NOT NULL,"KOL_N1" number(14,5) DEFAULT (0) NOT NULL,"KOL_N2" number(14,5) DEFAULT (0) NOT NULL,"KOL_N3" number(14,5) DEFAULT (0) NOT NULL,"KOL_N4" number(14,5) DEFAULT (0) NOT NULL,"KOL_N5" number(14,5) DEFAULT (0) NOT NULL,"KOL_N6" number(14,5) DEFAULT (0) NOT NULL,"KOL_N7" number(14,5) DEFAULT (0) NOT NULL,"KOL_N8" number(14,5) DEFAULT (0) NOT NULL,"KOL_N9" number(14,5) DEFAULT (0) NOT NULL,"KOL_N10" number(14,5) DEFAULT (0) NOT NULL,"KOL_N11" number(14,5) DEFAULT (0) NOT NULL,"KOL_N12" number(14,5) DEFAULT (0) NOT NULL,"KOL_N13" number(14,5) DEFAULT (0) NOT NULL,"KOL2N1" number(14,5) DEFAULT (0) NOT NULL,"KOL2N2" number(14,5) DEFAULT (0) NOT NULL,"KOL2N3" number(14,5) DEFAULT (0) NOT NULL,"KOL2N4" number(14,5) DEFAULT (0) NOT NULL,"KOL2N5" number(14,5) DEFAULT (0) NOT NULL,"KOL2N6" number(14,5) DEFAULT (0) NOT NULL,"KOL2N7" number(14,5) DEFAULT (0) NOT NULL,"KOL2N8" number(14,5) DEFAULT (0) NOT NULL,"KOL2N9" number(14,5) DEFAULT (0) NOT NULL,"KOL2N10" number(14,5) DEFAULT (0) NOT NULL,"KOL2N11" number(14,5) DEFAULT (0) NOT NULL,"KOL2N12" number(14,5) DEFAULT (0) NOT NULL,"KOL2N13" number(14,5) DEFAULT (0) NOT NULL,"SUM_N1" number(16,2) DEFAULT (0) NOT NULL,"SUM_N2" number(16,2) DEFAULT (0) NOT NULL,"SUM_N3" number(16,2) DEFAULT (0) NOT NULL,"SUM_N4" number(16,2) DEFAULT (0) NOT NULL,"SUM_N5" number(16,2) DEFAULT (0) NOT NULL,"SUM_N6" number(16,2) DEFAULT (0) NOT NULL,"SUM_N7" number(16,2) DEFAULT (0) NOT NULL,"SUM_N8" number(16,2) DEFAULT (0) NOT NULL,"SUM_N9" number(16,2) DEFAULT (0) NOT NULL,"SUM_N10" number(16,2) DEFAULT (0) NOT NULL,"SUM_N11" number(16,2) DEFAULT (0) NOT NULL,"SUM_N12" number(16,2) DEFAULT (0) NOT NULL,"SUM_N13" number(16,2) DEFAULT (0) NOT NULL,"DATE_REST" date NULL,"KOL_PRI" number(14,5) DEFAULT (0) NOT NULL,"KOL2PRI" number(14,5) DEFAULT (0) NOT NULL,"SUM_PRI" number(16,2) DEFAULT (0) NOT NULL,"DATE_FPRI" date NULL,"NDOC_FPRI" char(20) DEFAULT (' ') NOT NULL,"KOL_PRIG" number(14,5) DEFAULT (0) NOT NULL,"KOL2PRIG" number(14,5) DEFAULT (0) NOT NULL,"SUM_PRIG" number(16,2) DEFAULT (0) NOT NULL,"KOL_PRIT" number(14,5) DEFAULT (0) NOT NULL,"KOL2PRIT" number(14,5) DEFAULT (0) NOT NULL,"KOL_RAS" number(14,5) DEFAULT (0) NOT NULL,"KOL2RAS" number(14,5) DEFAULT (0) NOT NULL,"SUM_RAS" number(16,2) DEFAULT (0) NOT NULL,"DATE_LRAS" date NULL,"NDOC_LRAS" char(20) DEFAULT (' ') NOT NULL,"KOL_RASG" number(14,5) DEFAULT (0) NOT NULL,"KOL2RASG" number(14,5) DEFAULT (0) NOT NULL,"SUM_RASG" number(16,2) DEFAULT (0) NOT NULL,"KOL_RAST" number(14,5) DEFAULT (0) NOT NULL,"KOL2RAST" number(14,5) DEFAULT (0) NOT NULL,"KOL_PRIREZ" number(14,5) DEFAULT (0) NOT NULL,"KOL2PRIREZ" number(14,5) DEFAULT (0) NOT NULL,"SUM_PRIREZ" number(16,2) DEFAULT (0) NOT NULL,"KOL_RASREZ" number(14,5) DEFAULT (0) NOT NULL,"KOL2RASREZ" number(14,5) DEFAULT (0) NOT NULL,"SUM_RASREZ" number(16,2) DEFAULT (0) NOT NULL,"PRC_RAS" number(3,0) DEFAULT (0) NOT NULL,"KSSM" char(5) NULL,"COMM" char(40) DEFAULT (' ') NOT NULL,"KDM3" char(1) DEFAULT (' ') NOT NULL,"KDM4" char(1) DEFAULT (' ') NOT NULL,"KOL_INV" number(14,5) DEFAULT (0) NOT NULL,"KOL2INV" number(14,5) DEFAULT (0) NOT NULL,"CENA_INV" number(15,5) DEFAULT (0) NOT NULL,"SUM_INV" number(16,2) DEFAULT (0) NOT NULL,"DATE_INV" date NULL,"KSBG" char(3) DEFAULT (' ') NOT NULL,"KOL_C" number(14,5) DEFAULT (0) NOT NULL,"KOL2C" number(14,5) DEFAULT (0) NOT NULL,"SUM_C" number(16,2) DEFAULT (0) NOT NULL,"KBLS" char(5) DEFAULT (' ') NOT NULL,"BS_ZATR" char(10) NULL,"KAU_ZATR" char(12) DEFAULT (' ') NOT NULL,"MECEXPL" number(3,0) DEFAULT (0) NOT NULL,"SUM_IZNOS" number(14,2) DEFAULT (0) NOT NULL,"SUM_IMEC" number(14,2) DEFAULT (0) NOT NULL,"NINKAS" number(10,0) DEFAULT (0) NOT NULL,"DATE_D" date NULL,"FIO_D" char(10) DEFAULT (' ') NOT NULL,"DATE_K" date NULL,"FIO_O" char(10) DEFAULT (' ') NOT NULL,"STDCURR" char(1) DEFAULT (' ') NOT NULL) ON COMMIT PRESERVE ROWS
    End of information on OTHER waiting sessions.
    Current SQL statement for this session:
    insert into col$(obj#,name,intcol#,segcol#,type#,length,precision#,scale,null$,offset,fixedstorage,segcollength,deflength,default$,col#,property,charsetid,charsetform,spare1,spare2,spare3)values(:1,:2,:3,:4,:5,:6,decode(:5,182/*DTYIYM*/,:7,183/*DTYIDS*/,:7,decode(:7,0,null,:7)),decode(:5,2,decode(:8,-127/*MAXSB1MINAL*/,null,:8),178,:8,179,:8,180,:8,181,:8,182,:8,183,:8,231,:8,null),:9,0,:10,:11,decode(:12,0,null,:12),:13,:14,:15,:16,:17,:18,:19,:20)
    ===================================================
    PROCESS STATE
    Process global information:
    process: 5F28A1F8, call: 5F3A8E98, xact: 5DFF8B40, curses: 5F37D6A8, usrses: 5F375F38
    SO: 5F28A1F8, type: 2, owner: 00000000, flag: INIT/-/-/0x00
    (process) Oracle pid=18, calls cur/top: 5F3A8E98/5F3A75B8, flag: (0) -
    int error: 0, call error: 0, sess error: 0, txn error 0
    (post info) last post received: 0 0 117
    last post received-location: kcbzww
    last process to post me: 5f289c00 93 0
    last post sent: 0 0 117
    last post sent-location: kcbzww
    last process posted by me: 5f289c00 93 0
    (latch info) wait_event=0 bits=0
    Process Group: DEFAULT, pseudo proc: 5F2BC4EC
    O/S info: user: SYSTEM, term: VSC03, ospid: 3868
    OSD pid info: Windows thread id: 3868, image: ORACLE.EXE (SHAD)
    Dump of memory from 0x5F276E78 to 0x5F276FFC
    5F276E70 0000000B 5E1231B8 [.....1.^]
    5F276E80 00000010 000313A9 5F3A75B8 00000003 [.........u:_....]
    5F276E90 000313A9 5F4B92D4 0000000B 000313A9 [......K_........]
    5F276EA0 5F375F38 00000004 0003129D 5DE1FFA4 [8_7_...........]]
    5F276EB0 00000007 000313A9 5DE20028 00000007 [........(..]....]
    5F276EC0 000313A9 5DE200BC 00000007 000313A9 [.......]........]
    5F276ED0 5DE20140 00000007 000313A9 5DE201C4 [@..]...........]]
    5F276EE0 00000007 000313A9 5DE20248 00000007 [........H..]....]
    5F276EF0 000313A9 5DE202CC 00000007 000313A9 [.......]........]
    5F276F00 00000000 00000000 00000000 00000000 [................]
    Repeat 14 times
    5F276FF0 00000000 00000000 00000000 [............]
    (FOB) flags=2 fib=5DEEEC98 incno=0 pending i/o cnt=0
    fname=C:\ORACLE\PRODUCT\10.2.0\ORADATA\ITDB\UNDOTBS01.DBF
    fno=2 lblksz=8192 fsiz=311040
    (FOB) flags=2 fib=5DEEE608 incno=0 pending i/o cnt=0
    fname=C:\ORACLE\PRODUCT\10.2.0\ORADATA\ITDB\CONTROL03.CTL
    fno=2 lblksz=16384 fsiz=430
    (FOB) flags=2 fib=5DEEE2C8 incno=0 pending i/o cnt=0
    fname=C:\ORACLE\PRODUCT\10.2.0\ORADATA\ITDB\CONTROL02.CTL
    fno=1 lblksz=16384 fsiz=430
    (FOB) flags=2 fib=5DEEDF88 incno=0 pending i/o cnt=0
    fname=C:\ORACLE\PRODUCT\10.2.0\ORADATA\ITDB\CONTROL01.CTL
    fno=0 lblksz=16384 fsiz=430
    (FOB) flags=2 fib=5DEEF658 incno=0 pending i/o cnt=0
    fname=C:\ORACLE\PRODUCT\10.2.0\ORADATA\ITDB\ITDATA01.DBF
    fno=5 lblksz=8192 fsiz=2109440
    (FOB) flags=2 fib=5DEEE948 incno=0 pending i/o cnt=0
    fname=C:\ORACLE\PRODUCT\10.2.0\ORADATA\ITDB\SYSTEM01.DBF
    fno=1 lblksz=8192 fsiz=79360
    (FOB) flags=2 fib=5DEEFCE8 incno=0 pending i/o cnt=0
    fname=C:\ORACLE\PRODUCT\10.2.0\ORADATA\ITDB\TEMP01.DBF
    fno=201 lblksz=8192 fsiz=43776
    SO: 5F375F38, type: 4, owner: 5F28A1F8, flag: INIT/-/-/0x00
    (session) sid: 145 trans: 5D06D4B0, creator: 5F28A1F8, flag: (8100041) USR/- BSY/-/-/-/-/-
    DID: 0001-0012-00000164, short-term DID: 0000-0000-00000000
    txn branch: 00000000
    oct: 1, prv: 0, sql: 50B2BAC0, psql: 57554078, user: 60/ITUSER
    service name: ITDB
    O/S info: user: VSC03\it_appsrv, term: VSC03, ospid: 3668:3616, machine: WORKGROUP\VSC03
    program: AppServer.exe
    client info: ELIZ-041.R#046IKSANOV.RIKSANOV.VSC03:8223.3668.5-1-2600.IT_APPSR
    application name: 5436,20100413105316,82100, hash value=3093400541
    last wait for 'enq: TX - allocate ITL entry' blocking sess=0x5F386200 seq=4256 wait_time=2999487 seconds since wait started=2
    name|mode=54580004, usn<<16 | slot=6001c, sequence=192d
    Dumping Session Wait History
    for 'enq: TX - allocate ITL entry' count=1 wait_time=2999487
    name|mode=54580004, usn<<16 | slot=6001c, sequence=192d
    for 'buffer busy waits' count=1 wait_time=10
    file#=1, block#=f923, class#=1
    for 'buffer busy waits' count=1 wait_time=53
    file#=1, block#=d1ff, class#=1
    for 'buffer busy waits' count=1 wait_time=36
    file#=1, block#=19, class#=4
    for 'buffer busy waits' count=1 wait_time=28
    file#=1, block#=19, class#=4
    for 'buffer busy waits' count=1 wait_time=27
    file#=1, block#=f923, class#=1
    for 'buffer busy waits' count=1 wait_time=13
    file#=1, block#=ec86, class#=1
    for 'buffer busy waits' count=1 wait_time=29
    file#=1, block#=f923, class#=1
    for 'buffer busy waits' count=1 wait_time=15
    file#=1, block#=f95d, class#=1
    for 'buffer busy waits' count=1 wait_time=215
    file#=1, block#=d1ff, class#=1
    temporary object counter: 1
    UOL used : 0 locks(used=2, free=10)
    KGX Atomic Operation Log 69405330
    Mutex 00000000(0, 0) idn 0 oper NONE
    Cursor Parent uid 145 efd 5 whr 11 slp 0
    oper=NONE pt1=A4744BC4 pt2=6842B2F4 pt3=A4744B94
    pt4=00000000 u41=0 stt=0
    KGX Atomic Operation Log 69405358
    Mutex 50B2BB74(0, 1) idn 0 oper NONE
    Cursor Stat uid 145 efd 8 whr 1 slp 0
    oper=NONE pt1=50B2BAC0 pt2=00000000 pt3=00000000
    pt4=00000000 u41=0 stt=8
    KGX Atomic Operation Log 69405380
    Mutex 00000000(0, 0) idn 0 oper NONE
    Library Cache uid 145 efd 0 whr 0 slp 0
    SO: 5C5A6334, type: 53, owner: 5F375F38, flag: INIT/-/-/0x00
    LIBRARY OBJECT LOCK: lock=5c5a6334 handle=5e9a6868 mode=N
    call pin=00000000 session pin=00000000 hpc=0000 hlc=0000
    htl=5C5A6384[5C76A228,5C59D1D0] htb=5C59D1D0 ssga=5C59CD04
    user=5f375f38 session=5f37d6a8 count=1 flags=CBK[0020] savepoint=0x0
    LIBRARY OBJECT HANDLE: handle=5e9a6868 mtx=5E9A691C(0) cdp=0
    namespace=CRSR flags=RON/KGHP/PN0/EXP/[10010100]
    kkkk-dddd-llll=0000-0001-0001 lock=N pin=S latch#=1 hpc=c742 hlc=c742
    lwt=5E9A68C4[5E9A68C4,5E9A68C4] ltm=5E9A68CC[5E9A68CC,5E9A68CC]
    pwt=5E9A68A8[5E9A68A8,5E9A68A8] ptm=5E9A68B0[5E9A68B0,5E9A68B0]
    ref=5E9A68E4[662DCE3C,662DCE3C] lnd=5E9A68F0[5E9A68F0,5E9A68F0]
    LIBRARY OBJECT: object=51e6451c
    type=CRSR flags=EXS[0001] pflags=[0000] status=VALD load=0
    DEPENDENCIES: count=1 size=16
    AUTHORIZATIONS: count=1 size=16 minimum entrysize=18
    ACCESSES: count=1 size=16
    TRANSLATIONS: count=1 size=16
    DATA BLOCKS:
    data# heap pointer status pins change whr
    0 a1f966d4 51e645b4 I/P/A/-/- 0 NONE 00
    6 662dcce4 a24e2534 I/P/A/-/E 0 NONE 00
    KGX Atomic Operation Log 50C2014C
    Mutex 662DCC54(0, 2) idn d64ee82 oper SHRD
    Cursor Pin uid 145 efd 0 whr 3 slp 0
    opr=4 pso=5C5A6334 flg=0
    pcs=662DCC54 nxt=5B9C77F4 flg=18 cld=0 hd=5E9A6868 par=54763C50
    ct=2 hsh=0 unp=00000000 unn=0 hvl=662dcff0 nhv=0 ses=00000000
    hep=662DCCA0 flg=80 ld=1 ob=51E6451C ptr=A24E2534 fex=A24E16F8
    SO: 5C76A1D8, type: 53, owner: 5F375F38, flag: INIT/-/-/0x00
    LIBRARY OBJECT LOCK: lock=5c76a1d8 handle=5a67b168 mode=N
    call pin=00000000 session pin=00000000 hpc=0000 hlc=0000
    htl=5C76A228[5C59D1D0,5C5A6384] htb=5C59D1D0 ssga=5C59CD04
    user=5f375f38 session=5f37d6a8 count=1 flags=[0000] savepoint=0x4bc41571
    LIBRARY OBJECT HANDLE: handle=5a67b168 mtx=5A67B21C(2) cdp=2
    name=
    insert into col$(obj#,name,intcol#,segcol#,type#,length,precision#,scale,null$,offset,fixedstorage,segcollength,deflength,default$,col#,property,charsetid,charsetform,spare1,spare2,spare3)values(:1,:2,:3,:4,:5,:6,decode(:5,182/*DTYIYM*/,:7,183/*DTYIDS*/,:7,decode(:7,0,null,:7)),decode(:5,2,decode(:8,-127/*MAXSB1MINAL*/,null,:8),178,:8,179,:8,180,:8,181,:8,182,:8,183,:8,231,:8,null),:9,0,:10,:11,decode(:12,0,null,:12),:13,:14,:15,:16,:17,:18,:19,:20)
    hash=012a6293ef607cee606b82dc0d64ee82 timestamp=04-08-2010 17:06:19
    namespace=CRSR flags=RON/KGHP/TIM/PN0/LRG/KST/DBN/MTX/[100100d1]
    kkkk-dddd-llll=0000-0001-0001 lock=N pin=0 latch#=1 hpc=c298 hlc=c298
    lwt=5A67B1C4[5A67B1C4,5A67B1C4] ltm=5A67B1CC[5A67B1CC,5A67B1CC]
    pwt=5A67B1A8[5A67B1A8,5A67B1A8] ptm=5A67B1B0[5A67B1B0,5A67B1B0]
    ref=5A67B1E4[5A67B1E4,5A67B1E4] lnd=5A67B1F0[5A67B1F0,5A67B1F0]
    LIBRARY OBJECT: object=54763bb8
    type=CRSR flags=EXS[0001] pflags=[0000] status=VALD load=0
    CHILDREN: size=16
    child# table reference handle
    0 662dd020 662dce3c 5e9a6868
    1 662dd020 5b9c7940 5eb1fdbc
    DATA BLOCKS:
    data# heap pointer status pins change whr
    0 54c98590 54763c50 I/P/A/-/- 0 NONE 00
    SO: 5C5AFBCC, type: 53, owner: 5F375F38, flag: INIT/-/-/0x00
    LIBRARY OBJECT LOCK: lock=5c5afbcc handle=6ad6312c mode=N
    call pin=00000000 session pin=00000000 hpc=0000 hlc=0000
    htl=5C5AFC1C[5C61B52C,5C59D0B0] htb=5C59D0B0 ssga=5C59CD04
    user=5f375f38 session=5f37d6a8 count=1 flags=[0000] savepoint=0x0
    LIBRARY OBJECT HANDLE: handle=6ad6312c mtx=6AD631E0(0) cdp=0
    namespace=CRSR flags=RON/KGHP/PN0/EXP/[10010100]
    kkkk-dddd-llll=0000-0001-0001 lock=N pin=0 latch#=2 hpc=b9a0 hlc=b9a0
    lwt=6AD63188[6AD63188,6AD63188] ltm=6AD63190[6AD63190,6AD63190]
    pwt=6AD6316C[6AD6316C,6AD6316C] ptm=6AD63174[6AD63174,6AD63174
    SO: 5C5A5C34, type: 53, owner: 5F375F38, flag: INIT/-/-/0x00
    LIBRARY OBJECT LOCK: lock=5c5a5c34 handle=69731e20 mode=N
    call pin=00000000 session pin=00000000 hpc=0000 hlc=0000
    htl=5C5A5C84[5C59D4D0,5C6074B0] htb=5C59D4D0 ssga=5C59CD04
    user=5f375f38 session=5f37d6a8 count=1 flags=[0000] savepoint=0x4bc41571
    LIBRARY OBJECT HANDLE: handle=69731e20 mtx=69731ED4(2) cdp=2
    name=update con$ set con#=:3 where owner#=:1 and name=:2
    hash=cb0043a665029adc35682cfd8f583ce2 timestamp=04-08-2010 17:10:17
    namespace=CRSR flags=RON/KGHP/TIM/PN0/SML/KST/DBN/MTX/[120100d0]
    kkkk-dddd-llll=0000-0001-0001 lock=N pin=0 latch#=2 hpc=ac50 hlc=ac50
    lwt=69731E7C[69731E7C,69731E7C] ltm=69731E84[69731E84,69731E84]
    pwt=69731E60[69731E60,69731E60] ptm=69731E68[69731E68,69731E68]
    ref=69731E9C[69731E9C,69731E9C] lnd=69731EA8[69731EA8,69731EA8]
    LIBRARY OBJECT: object=66177404
    type=CRSR flags=EXS[0001] pflags=[0000] status=VALD load=0
    CHILDREN: size=16
    child# table reference handle
    0 5887c454 5887c270 69641ffc
    1 5887c454 5887c400 693d29b4
    DATA BLOCKS:
    data# heap pointer status pins change whr
    0 57178070 6617749c I/P/A/-/- 0 NONE 00
    SO: 5C62D288, type: 53, owner: 5F375F38, flag: INIT/-/-/0x00
    LIBRARY OBJECT LOCK: lock=5c62d288 handle=5734d800 mode=N
    call pin=00000000 session pin=00000000 hpc=0000 hlc=0000
    htl=5C62D2D8[5C59D590,5C59D590] htb=5C59D590 ssga=5C59CD04
    user=5f375f38 session=5f375f38 count=0 flags=LRU/[4000] savepoint=0x17ee5af
    LIBRARY OBJECT HANDLE: handle=5734d800 mtx=5734D8B4(0) cdp=0
    name=SYS._default_auditing_options_
    hash=fab1a450ca8625c88d7aa501cb042efa timestamp=03-14-2008 18:46:51
    namespace=TABL flags=KGHP/TIM/SML/[02000000]
    kkkk-dddd-llll=0000-0001-0001 lock=N pin=0 latch#=1 hpc=3e1e hlc=3e1e
    lwt=5734D85C[5734D85C,5734D85C] ltm=5734D864[5734D864,5734D864]
    pwt=5734D840[5734D840,5734D840] ptm=5734D848[5734D848,5734D848]
    ref=5734D87C[5734D87C,5734D87C] lnd=5734D888[5734D888,5734D888]
    LIBRARY OBJECT: object=69e8d9e4
    type=TABL flags=EXS/LOC[0005] pflags=[0000] status=VALD load=0
    DATA BLOCKS:
    data# heap pointer status pins change whr
    0 572f55b0 69e8da7c I/-/A/-/- 0 NONE 00
    SO: 5C62CA38, type: 53, owner: 5F375F38, flag: INIT/-/-/0x00
    LIBRARY OBJECT LOCK: lock=5c62ca38 handle=54e2b2d0 mode=N
    call pin=00000000 session pin=00000000 hpc=0000 hlc=0000
    htl=5C62CA88[5C7875E0,5C59D458] htb=5C59D458 ssga=5C59CD04
    user=5f375f38 session=5f37d6a8 count=1 flags=[0000] savepoint=0x0
    LIBRARY OBJECT HANDLE: handle=54e2b2d0 mtx=54E2B384(0) cdp=0
    namespace=CRSR flags=RON/KGHP/PN0/EXP/[10010100]
    kkkk-dddd-llll=0000-0001-0001 lock=N pin=0 latch#=1 hpc=cb1c hlc=cb1c
    lwt=54E2B32C[54E2B32C,54E2B32C] ltm=54E2B334[54E2B334,54E2B334]
    pwt=54E2B310[54E2B310,54E2B310] ptm=54E2B318[54E2B318,54E2B318]
    ref=54E2B34C[66147E34,66147E34] lnd=54E2B358[54E2B358,54E2B358]
    LIBRARY OBJECT: object=51e651ac
    type=CRSR flags=EXS[0001] pflags=[0000] status=VALD load=0
    DEPENDENCIES: count=1 size=16
    AUTHORIZATIONS: count=1 size=16 minimum entrysize=18
    ACCESSES: count=1 size=16
    TRANSLATIONS: count=1 size=16
    DATA BLOCKS:
    data# heap pointer status pins change whr
    0 6a86de6c 51e65244 I/P/A/-/- 0 NONE 00
    6 66147cdc 9dabe588 I/-/A/-/E 0 NONE 00
    SO: 5C787590, type: 53, owner: 5F375F38, flag: INIT/-/-/0x00
    LIBRARY OBJECT LOCK: lock=5c787590 handle=57422b64 mode=N
    call pin=00000000 session pin=00000000 hpc=0000 hlc=0000
    htl=5C7875E0[5C59D458,5C62CA88] htb=5C59D458 ssga=5C59CD04
    user=5f375f38 session=5f37d6a8 count=1 flags=[0000] savepoint=0x4bc41571
    LIBRARY OBJECT HANDLE: handle=57422b64 mtx=57422C18(2) cdp=2
    name=insert into obj$(owner#,name,namespace,obj#,type#,ctime,mtime,stime,status,remoteowner,linkname,subname,dataobj#,flags,oid$,spare1,spare2)values(:1,:2,:3,:4,:5,:6,:7,:8,:9,:10,:11,:12,:13,:14,:15,:16, :17)
    hash=8876f3fed7222711572e6a76e623c9d3 timestamp=04-08-2010 17:06:19
    namespace=CRSR flags=RON/KGHP/TIM/PN0/MED/KST/DBN/MTX/[500100d0]
    kkkk-dddd-llll=0000-0001-0001 lock=N pin=0 latch#=1 hpc=60c0 hlc=60c0
    lwt=57422BC0[57422BC0,57422BC0] ltm=57422BC8[57422BC8,57422BC8]
    pwt=57422BA4[57422BA4,57422BA4] ptm=57422BAC[57422BAC,57422BAC]
    ref=57422BE0[57422BE0,57422BE0] lnd=57422BEC[57422BEC,57422BEC]
    LIBRARY OBJECT: object=6a7276e4
    type=CRSR flags=EXS[0001] pflags=[0000] status=VALD load=0
    CHILDREN: size=16
    child# table reference handle
    0 66148018 66147e34 54e2b2d0
    1 66148018 5896c0ec 6af7d37c
    DATA BLOCKS:
    data# heap pointer status pins change whr
    0 696b76e0 6a72777c I/P/A/-/- 0 NONE 00
    SO: 5C78B970, type: 53, owner: 5F375F38, flag: INIT/-/-/0x00
    LIBRARY OBJECT LOCK: lock=5c78b970 handle=54fbd288 mode=N
    call pin=00000000 session pin=00000000 hpc=0000 hlc=0000
    htl=5C78B9C0[5C787B90,5C59D1B0] htb=5C59D1B0 ssga=5C59CD04
    user=5f375f38 session=5f37d6a8 count=1 flags=[0000] savepoint=0x0
    LIBRARY OBJECT HANDLE: handle=54fbd288 mtx=54FBD33C(0) cdp=0
    namespace=CRSR flags=RON/KGHP/PN0/EXP/[10010100]
    kkkk-dddd-llll=0000-0001-0001 lock=N pin=0 latch#=3 hpc=f79a hlc=f79a
    lwt=54FBD2E4[54FBD2E4,54FBD2E4] ltm=54FBD2EC[54FBD2EC,54FBD2EC]
    pwt=54FBD2C8[54FBD2C8,54FBD2C8] ptm=54FBD2D0[54FBD2D0,54FBD2D0]
    ref=54FBD304[5BF92EF0,5BF92EF0] lnd=54FBD310[54FBD310,54FBD310]
    LIBRARY OBJECT: object=541e8b98
    type=CRSR flags=EXS[0001] pflags=[0000] status=VALD load=0
    DEPENDENCIES: count=1 size=16
    AUTHORIZATIONS: count=1 size=16 minimum entrysize=16
    ACCESSES: count=1 size=16
    TRANSLATIONS: count=1 size=16
    DATA BLOCKS:
    data# heap pointer status pins change whr
    0 693cb454 541e8c30 I/P/A/-/- 0 NONE 00
    6 5bf92e34 a021d62c I/-/A/-/E 0 NONE 00
    SO: 5C787B40, type: 53, owner: 5F375F38, flag: INIT/-/-/0x00
    LIBRARY OBJECT LOCK: lock=5c787b40 handle=5eb09aec mode=N
    call pin=00000000 session pin=00000000 hpc=0000 hlc=0000
    htl=5C787B90[5C59D1B0,5C78B9C0] htb=5C59D1B0 ssga=5C59CD04
    user=5f375f38 session=5f37d6a8 count=1 flags=[0000] savepoint=0x4bc41571
    LIBRARY OBJECT HANDLE: handle=5eb09aec mtx=5EB09BA0(2) cdp=2
    name=select o.owner#,o.name,o.namespace,o.remoteowner,o.linkname,o.subname,o.dataobj#,o.flags from obj$ o where o.obj#=:1
    hash=ae93e4a5100360375a3ff87632f4667e timestamp=04-02-2010 10:17:58
    namespace=CRSR flags=RON/KGHP/TIM/PN0/MED/KST/DBN/MTX/[500100d0]
    kkkk-dddd-llll=0000-0001-0001 lock=N pin=0 latch#=3 hpc=d23e hlc=d23e
    lwt=5EB09B48[5EB09B48,5EB09B48] ltm=5EB09B50[5EB09B50,5EB09B50]
    pwt=5EB09B2C[5EB09B2C,5EB09B2C] ptm=5EB09B34[5EB09B34,5EB09B34]
    ref=5EB09B68[5EB09B68,5EB09B68] lnd=5EB09B74[5EB09B74,5EB09B74]
    LIBRARY OBJECT: object=5bf92fd4
    type=CRSR flags=EXS[0001] pflags=[0000] status=VALD load=0
    CHILDREN: size=16
    child# table reference handle
    0 5bf92f60 5bf92d7c 5eb099a8
    1 5bf92f60 5bf92ef0 54fbd288
    2 5bf92f60 5b9aa120 576a80c8
    3 5bf92f60 5b9aa284 54f7a6d0
    DATA BLOCKS:
    data# heap pointer status pins change whr
    0 5eb09a7c 5bf9306c I/P/A/-/- 0 NONE 00

  • How to Create a Temporary Table with SQL Server

    I know you can create a temporary table in SQL Server 2000, but not quite sure how to do it in CFMX 7, i.e., does the SQL go inside a <CFQUERY dbtype="query"> tag?
    I'm pulling the main set of records from an Oracle server (1st data source), but it does not contain employee names, only employee IDs.  Since I need to show the employee name along with the Emp ID, I'm then pulling a list of "current" employee names from a SQL Server (2nd data source), which is the main database on our CF server.
    I've got a QofQ that works fine, except it only matches EmpIDs that exist in both result sets.  Employees who are no longer employed, don't match, and don't display.  Since I can't do a LEFT OUTER JOIN with a QofQ, what I need to do is get the records from the Oracle server into the SQL Server.  Preferably in a temporary table.
    I was hoping if I could get those Oracle records written to a temp table on the main SQL Server, in same database as the Employee Name table, I could then write a normal <CFQUERY> that uses a LEFT OUTER JOIN.
    I think I could probably write a Stored Procedure that would execute the SQL to create the temporary table, but am trying to avoid having to write the SP, and do it the simplest way.
    This query will be a program that can be run hundreds of times per day, with a form that allows users to select date ranges, locations, and other options.  That starts the queries, which creates the report.  So I just need the temp table to exist only until all the SQL has run, and the <CFOUTPUT> has generated a report.
    If the premise is right, I just need some help with the syntax for creating a SQL Server temp table, when you want to write records to it from an external data source.  I'm trying the following, but getting an error:
    <CFQUERY name="ITE_Temp" datasource="SkynetSQL">
    CREATE TABLE #MyTemp
    (   INSERT INTO #MyTemp
    ITE2.TrueFile char (7) NOT NULL,
    ITE2.CountOfEmployee int NULL,
    ITE2.DTL_SUBTOT decimal NULL,
    ITE2.EMPTYPE char (3) NULL,
    ITE2.ARPT_CD char (3) NULL
    </CFQUERY>
    So I actually created a permanent table on the SQL Server, and wrote the below SQL, which does work, and does write the records to table.  I can then write another CFQUERY with a LEFT OUTER JOIN, and get all the records, including those that don't have matching employee name:
    <CFQUERY datasource="SkynetSQL">
    <CFLOOP index="i" from="1" to = "#ITE2.RecordCount#">
    INSERT INTO ITE_Temp
       (FullFile,
       EmployeeCount,
       DTL_Amount,
       EmployeeType,
       station)
    VALUES  ('#ITE2.TrueFile[i]#',
       #ITE2.CountOfEmployee[i]#,
       #ITE2.DTL_SUBTOT[i]#,
       '#ITE2.EMPTYPE[i]#',
       '#ITE2.ARPT_CD[i]#')
    </CFLOOP>
    </CFQUERY>
    But, I hate to have to create a table and physically write to it.  For one, it seems slower, and doing it in temp would be in memory, and probably much faster, correct?  Is there some way to code the above, so that it does something similar, but in a TEMPORARY TABLE?   If I can figure out how to do this, I can pull data from multiple data sources and servers, and using SQL Server temp tables, work with the data as if it was all on the same SQL Server, and do some cool reports.
    Everything I've done for the past few years, has all been from data from a single source, whether SQL Server, or another server.  Now I need to start writing reports where data can come from 3 or 4 different servers, and be able to do joins (inner and outer).  Thanks for any advice/help.  Much appreciated.
    Gary

    While waiting to hear back, I was able to write the query results from an outside Oracle server, to a table on the local SQL Server, and do the LEFT OUTER JOIN required for the final query and report to work.  That was with this syntax:
    <CFQUERY name="AddTableRecords" datasource="MyTable">
    TRUNCATE TABLE ITE_Temp
    <CFOUTPUT query="ITE2">
    INSERT INTO ITE_Temp
    (FullFile,EmployeeCount,DTL_Amount,EmployeeType,station)
    VALUES
    ('#TrueFile#', #CountOfEmployee#, #DTL_SUBTOT#, '#EMPTYPE#', '#ARPT_CD#')
    </CFOUTPUT>
    </CFQUERY>
    However, I was not able to write to a temporary table AND read the results. I got the syntax to run to write the above results to a temporary table.  But when I tried to read and output the results from the temp table, I got an error.  Also, it wouldn't take the single "#" (local) only the global "##" table var, using this syntax.  Note that if I didn't have the DROP TABLE in the beginning, the 2nd time you run this query, you get an error telling you the table already exists.
    <CFQUERY name="ITE_Temp2" datasource="MyTable">
    DROP TABLE ##MyTemp2
    CREATE TABLE ##MyTemp2
    FullFile char (7) NOT NULL,
    EmployeeCount int NULL,
    DTL_Amount decimal NULL,
    EmployeeType char (3) NULL,
    station char (3) NULL
    <CFOUTPUT query="ITE2">
    INSERT INTO ##MyTemp2 VALUES
    '#ITE2.TrueFile#',
    #ITE2.CountOfEmployee#,
    #ITE2.DTL_SUBTOT#,
    '#ITE2.EMPTYPE#',
    '#ITE2.ARPT_CD#'
    </CFOUTPUT>
    </CFQUERY>
    So even though the above works, I could use some help in reading/writing the output.  I've tried several things similar to below, but they don't work.  It't telling me ITE_Temp2 does not exist.  It's not easy to find good examples of creating temporary tables in SQL Server.
    <CFQUERY name="QueryTest2" datasource="SkynetSQL">
    SELECT *
    FROM ITE_Temp2
    </CFQUERY>
    <CFOUTPUT query="ITE_Temp2">
    Output from Temp Table<br>
    <p>FullFile: #FullFile#, EmployeeCount: #EmployeeCount#</p>
    </CFOUTPUT>
    Thanks for any help/advice.
    Gary.

  • Create global temporary table in delete trigger

    Hi to all, I am triyng to create a global temporary table in trigger so i can hold all the deleted rows and do some stuff after the statement which uses the table that fires the trigger.
    In this way I am trying to avod mutating table error. but the following trigger gives error.
    create or replace
    TRIGGER TD_EKSINAVLAR
    FOR DELETE ON DERSSECIMI_EKSINAVLAR
    COMPOUND TRIGGER
    BEFORE STATEMENT IS
    BEGIN
    CREATE GLOBAL TEMPORARY TABLE DELETED_ROWS
    AS ( SELECT * FROM DERSSECIMI_EKSINAVLAR WHERE 1 = 2 )
    ON COMMIT DELETE ROWS;
    END BEFORE STATEMENT;
    BEFORE EACH ROW IS
    BEGIN
    NULL;
    END BEFORE EACH ROW;
    AFTER EACH ROW IS
    BEGIN
    NULL;
    END AFTER EACH ROW;
    AFTER STATEMENT IS
    BEGIN
    NULL;
    END AFTER STATEMENT;
    END TD_EKSINAVLAR;
    the error is
    Error(12,5): PLS-00103: Encountered the symbol "CREATE" when expecting one of the following: ( begin case declare exit for goto if loop mod null pragma raise return select update while with <an identifier> <a double-quoted delimited-identifier> <a bind variable> << continue close current delete fetch lock insert open rollback savepoint set sql execute commit forall merge pipe purge
    Please help me about the situation.
    Thanks in advance.
    Gokhan

    Karthick you are absolutly right
    Our main process is to migrate sql server 2000 database to oracle 11g and I am stuck with the triggers that reference to table that fires the trigger itself.
    Can you help me about how i can overcome mutating table errors using compund triggers? Espacially for the situation that one statement tries to update or delete multiple rows on a table.
    You can understand my logic from the above code. I want to hold all the affected rows in a table and in after statement body using a cursor on that table I want to do required changes on the table. How can I do that or how should I do ?
    regards.

  • ORA-00955 reports when I try to "create global temporary table" in windows

    Hi,
    When I try to run the sql in my oracle 9i server which is installed in a windows2000 machine,
    Create global temporary table test ...;
    For the first time, I can create table successfully.
    But I cannot access this table any more:
    drop table test;
    desc test;
    select * from test;
    In addition, if I try to create the table again, I got the error:
    ORA-00955: name is already used by an existing object
    While the same table can be created and dropped in another oracle9i server which is installed in Solaris 9 machine.
    So I suspect that this sould be a bug of window oracle server.
    Is there anyone who can confirm this?
    Or who can tell me how to report this bug to oracle?
    Thanks in advance.
    Please also refer the message at:
    http://asktom.oracle.com/pls/ask/f?p=4950:8:::::F4950_P8_DISPLAYID:1046974576560
    If you search the text: "create global temporary table sess_event", you can see for the first time, the table is created successfully.
    But the ORA-00955 reports when the author try to create table for the second time.
    This problem is exactly the same as my problem.
    I have also made a search both in Google and in Oracle website and I cannot find any solution of it.

    Read      Metalink Note:68098.1 Subject:      Overview of Temporary Tables
    How did you difine the temporary tables? on commit delete rows are reserv rows?
    http://download-west.oracle.com/docs/cd/B10501_01/appdev.920/a96590/adg03sch.htm#7794
    Jaffar
    Message was edited by:
    The Human Fly

  • How to create a TEMPORARY table in memory?

    Hi,
    Is there any way to create a temporary table in memory other than in tablespce?

    A cursor should do the job for you, I reckon.
    Regards,
    Raymond.

  • What is the syntax for creating global temporary table using a select query

    hii
    I'm creating a global temporary table using a select query ..how to mention 'on commit preserve rows' that?
    create global temporary table t1 as select * from trn_ordbase on commit preserve rows;
    but this is invalid syntax,so how to mention on commit preserve rows in this???if i dont mention it ,by default its considering as on commit delete rows.
    Please help me out of this problem.

    create global temporary table t1 as select * from trn_ordbase on commit preserve rows;You CANNOT use this syntax.
    http://download-east.oracle.com/docs/cd/B19188_01/doc/B15917/sqcmd.htm
    http://download-east.oracle.com/docs/cd/B19188_01/doc/B15917/glob_tab.gif
    http://download-east.oracle.com/docs/cd/B19188_01/doc/B15917/cre_tabl.gif

  • Cannot create Global Temporary Table

    Hi,
    i'm trying to create a Global Temporary Table. However I receive a missing or invalid options specified error.
    This should be one of the most simple ways to create a Global Temporary Table right?
    DECLARE GLOBAL TEMPORARY TABLE SESSION.T_MECHANIC_ALLOCATION
    START_TIME DATE
    ,SYSUR_AUTO_KEY NUMBER
    ,EPP_AUTO_KEY NUMBER
    ,STOP_TIME DATE
    ,WOK_AUTO_KEY NUMBER
    ON COMMIT DELETE ROWS

    No, you create a Global Temporary Table in the same way as any other table: beginning with the CREATE keyword:
    CREATE GLOBAL TEMPORARY TABLE T_MECHANIC_ALLOCATION
    START_TIME DATE
    ,SYSUR_AUTO_KEY NUMBER
    ,EPP_AUTO_KEY NUMBER
    ,STOP_TIME DATE
    ,WOK_AUTO_KEY NUMBER
    ON COMMIT DELETE ROWS

  • Problem with Create global temporary table command

    Hi,
    Following is the query i am using in one of my pl/sql report..
    EXECUTE IMMEDIATE 'CREATE GLOBAL TEMPORARY TABLE Billing_Report_Table ON COMMIT PRESERVE ROWS as select * from (Vc_Sql_Statement)';
    Error message i am getting when i run the report is "missing SELECT keyword"
    The variable Vc_Sql_statement contains a complex query retrieving data from different tables.
    Please help me out.
    Thanks in advance
    Shanthi

    Hi,
    SCOTT@soti_9> DECLARE
      2    Vc_Sql_Statement VARCHAR2(30) := 'DUAL';
      3  BEGIN
      4    EXECUTE IMMEDIATE
      5      'CREATE GLOBAL TEMPORARY TABLE Billing_Report_Table ON COMMIT PRESERVE ROWS AS ' ||
      6      ' select * from ' || Vc_Sql_Statement;
      7  END;
      8  /
    PL/SQL procedure successfully completed.
    SCOTT@soti_9> select * from Billing_Report_Table;
    D
    XRegards,
    Dima

  • How can i create a temporary table in my report

    hi
    how to create temporary tables in reports
    please tell me detailed procedure with an example
    thanks in advance
    prasanth

    in before parameter form or before report trigger or in any triger where u want just pass u r query as..
    SRW.DO_SQL('CREATE TABLE MYTABLE....')
    hope it will solve your porb.
    Thanks

  • How create temporary table from list of values

    Can you anybody advise me how can I create temporary table from list of values? I have list of values and need create temporary table for next use with command JOIN etc.
    Thank you for help

    NO, you can not create temporary table in oracle on the fly ( Like #Tabels in SQl Server or Sybase ) , you will have to use the GTT i.e Global Temporary Tables
    check the following link GTT :
    to flush the tables after commit
    CREATE GLOBAL TEMPORARY TABLE my_temp_table (
      column1  NUMBER,
      column2  NUMBER
    ) ON COMMIT DELETE ROWS;In contrast, the ON COMMIT PRESERVE ROWS clause indicates that rows should be preserved until the end of the session.
    so to keep rows in Table after commit
    CREATE GLOBAL TEMPORARY TABLE my_temp_table (
      column1  NUMBER,
      column2  NUMBER
    ) ON COMMIT PRESERVE ROWS;

  • Creating temporary table in pl/sql block problem

    hello
    i have a problem in creating and using temporary table in pl/sql block
    please verify below block
    begin
    execute immediate 'create global temporary table alitemp1 (co_t varchar2(10),color varchar2(10))';
    insert into alitemp1 (co_t,color) values ('001','red');
    execute immediate 'DROP TABLE alitemp1';
    end;
    when i execute that block i will receive this error
    insert into alitemp1 (co_t,color) values ('001','red');
    ERROR at line 3:
    ORA-06550: line 3, column 14:
    PL/SQL: ORA-00942: table or view does not exist
    ORA-06550: line 3, column 2:
    PL/SQL: SQL Statement ignored
    i think it because that alitemp1 table don't create
    but two below block run fine
    begin
    execute immediate 'create global temporary table alitemp1 (co_t varchar2(10),color varchar2(10))';
    execute immediate 'DROP TABLE alitemp1';
    end;
    begin
    execute immediate 'create global temporary table alitemp1 (co_t varchar2(10),color varchar2(10))';
    end;
    select table_name from user_tables where table_name='ALITEMP1';
    TABLE_NAME
    ALITEMP1
    it means that problem is when the below line exists in block
    insert into alitemp1 (co_t,color) values ('001','red');
    if may please guide me

    In addition to the comments by Justin and 3360, you cannot do what you want the way you are doing it.
    All objects referred to in a PL/SQL block must exist at the time the block is compiled. In your case, since it is an anonomous block, that is run time. Since you are dynamically creating the temporary table you need to refer to it dynamically as well. More like:
    BEGIN
    EXECUTE IMMEDIATE 'create global temporary table alitemp1 (co_t varchar2(10),
                                                               color varchar2(10))';
    EXECUTE IMMEDIATE 'insert into alitemp1 (co_t,color) values (:b1,:b2)' USING '001', 'red';
    EXECUTE IMMEDIATE 'DROP TABLE alitemp1';
    END;However, don't do that it is a really bad idea. Just create the temporary table, if you really need it, once and use it in your processing.
    In most cases, things that SQL Server needs temporary tables for can be done easily in Oracle with a single SQL statement,
    John

  • Grant table create for only temporary tables

    I looking for a way to allow user to create only temporary tables. The user does not need to create or drop any public tables.

    Hi,
    >>This is really a bad suggestion. The user1 can now only select his own tables, no insert or update. It can not be allowed in the "real world".
    The OP said "I looking for a way to allow user to create only temporary tables"
    I think that you didn't understand what I showed ...
    SYSTEM@test> create user user1 identified by user1 default tablespace USERS quota 0 on USERS;
    User created.
    SYSTEM@test> create user user2 identified by user2 default tablespace USERS quota unlimited on USERS;
    User created.
    SYSTEM@test> grant create session,create table, create synonym to user1,user2;
    Grant succeeded.
    SYSTEM@test> connect user2/user2@teste
    Connected.
    USER2@test> create table x (id number);
    Table created.
    USER2@test> insert into x values (1);
    1 row created.
    USER2@test> grant select,delete,insert,update on x to user1;
    Grant succeeded.
    USER2@test> connect user1/user1@teste
    Connected.
    USER1@test> create synonym x for user2.x;
    Synonym created.
    USER1@test> insert into x values (2);
    1 row created.
    USER1@test> select * from x;
            ID
             1
             2
    USER1@test> create table y (id number);
    create table y (id number)
    ERROR at line 1:
    ORA-01536: space quota exceeded for tablespace 'USERS'
    USER1@teste> create table user2.y (id number);
    create table user2.y (id number)
    ERROR at line 1:
    ORA-01031: insufficient privileges
    USER1@test> drop table user2.x;
    drop table user2.x
    ERROR at line 1:
    ORA-01031: insufficient privileges
    USER1@test> create global temporary table y (id number) on commit preserve rows;
    Table created.
    USER1@test> insert into y values (1);
    1 row created.
    USER1@test> select * from y;
            ID
             1
    USER1@test>Cheers

  • Is there a way to create "temporary" tables in SAP database?

    Hello,
    Is there a way to create temporary tables in ABAP?
    Here is our scenario:
    1. Invoke a custom RFC that creates a temporary table and returns the name of the table.
    2. Invoke another custom RFC and pass this table name as parameter. This RFC internally does some INNER JOIN with the temporary table.
    3. Invoke the third RFC to delete the temporary table.
    Note that the name of the table cannot be static. We have many users using our application simultaneously and connecting to the SAP server.
    I would appreciate it if you could point me in the right direction.
    Thank you in advance for your help.
    Peter

    I just ran into a similar issue.  While only calling the select statement 2 times, each time had so many entries in the 'for all entries' list, that the compiler converted this into about 700 calls to the select.  Now since the select joined three real tables on the database, the trace shows this one select as being the slowest item in this application.
    I think that happened because 'for all entries' gets converted to an 'IN' clause, and then the total number of characters in any SQL statement has an upper limit.   So the compiler must make the select statement over and over until it covers all entries in the 'for all entries' list.  Is that correct?
    Since every database I ever saw has the concept of db temporary tables, I have used db temp tables many times for this sort of thing.
    The ABAP compiler could determine that more than one IN statement will be need, then use an alternate: write all the FOR ALL ENTRIES to a db temp table, then join on the db temp table, then drop db temp table.  Since the compiler does this sort of thing, no application code needs change to get the speed boost.

  • How can i create a Global Temporary Table inside a Stored Procedure....

    Hi...
    I need to create a Global Temporary Table inside a Stored
    Procedure....
    I have no idea how to do that....
    Please....if u can send me a sample, send to me....
    Thanks a lot

    To create a global temporary table inside a stored procedure,
    the minimal syntax would be:
    CREATE OR REPLACE PROCEDURE procedure_name
    AS
    BEGIN
    EXECUTE IMMEDIATE 'CREATE GLOBAL TEMPORARY TABLE table_name'
    || '(column_name NUMBER)';
    END procedure_name;
    As Todd stated, it would probably be better to create the global
    temporary table outside of the procedure:
    SQL> CREATE GLOBAL TEMPORARY TABLE table_name
    2 (column_name NUMBER);
    Table created.
    You can also specify things like ON COMMIT PRESERVE ROWS or ON
    COMMIT DELETE ROWS.
    It may be that there is something else, like a PL/SQL table of
    records or a cursor, that would suit your needs better. It is
    difficult to guess without knowing what you want to do with it.

Maybe you are looking for

  • Ip printing does not work

    When I enter the ip number, 10.5 sees the printer and suggests a driver. Once selected, it becomes available, but nos prints are working. The printer instantly sets itself to "pause" mode. Even when clicking on resume, il falls back to pause in micro

  • Not  able to access default package classes in own package

    I created a class called Constant.java in default package(no package ). I have Connection.java in util package. I am trying to use the Constant.java in my Connection.java like below.. public class Constant      public static final String NEW = "01";

  • Airport express + ADSL :-(

    Hello, I have problem with setting wireless network. First of all, i am new to mac world, i got new powerbook g4 and airport express. From my PB i can see and config airport and i also tryed to connect 2 internet using just adsl and cable, that works

  • How to put iphone in DFU mode ?

    Hello, how i can put my iphone4 in DFU mode ?

  • SCH website performance

    We have less than 10 devices on SCH.  Running any report takes minutes, not seconds.  Cisco, can you please do something to improve this?  The service loses its value when the tools aren't speedy enough to use productively.  I've also noted extreme d