materialize view code


 

hola...hola...semua, saya mau bertanya. saya punya 2 server, 1 server pusat dan 1 server client dimana server client merupakan replikasi server pusat. replikasi di database sudah berjalan lancar, dimana tiap bbrp menit tabel di server client akan menyamakan data secara otomatis dgn data server pusat.

nah...masalah saya ada di aplikasi yg saya kembangkan dgn vb6. saya klo mengeksekusi sql berikut di sql plus berjalan lancar "execute dbms_snapshot.refresh('PENGGUNA','F')"
tp klo saya eksekusi via vb6 tidak tereksekusi, pdhl waktu saya debug vb6-nya tidak error sama sekali. mungkin ada yg bisa memberi penjelasan??? terima kasih

[Non-text portions of this message have been removed]

] execute immediate parsing string

 
 

 

mungkin ada yg bisa bantu, potongan kode ini untuk parsing suatu text
sebagai parameter procedure.
ini dalam case dimana aplikasi sudah give up dgn bind variable :)

sehingga mau diakali yg melakukan bind dari sisi oracle dgn procedure, namun
demikian text parameter nantinya dinamis, so 1 prosedur ini untuk semua
query baik select maupun dml.

code di bawah ini sudah bekerja dgn baik, tapi sayangnya masih harus
hardcode dalam sintaks execute immediate setelah keyword USING :)

jika dipaksa array yg dimasukan kedalam USING, ada masalah pula dgn
perbedaan variable dalam runtime nantinya.... duhhhhh

mungkin pak bowo mau ngasih pencerahan? :)

set serveroutput on
declare
type str_var2 is varray(100) of varchar2(100);
l_str_var2 str_var2 := str_var2();
cursor c1 is SELECT EXTRACTVALUE(xt.column_value,'
e') str
FROM TABLE(XMLSEQUENCE
( EXTRACT
( XMLTYPE('<coll><e>' ||
REPLACE('UPDATE emp SET ename = xxx ,hiredate = SYSDATE ,sal = 100 WHERE
empno = 7934 AND deptno IN(10,20) AND job = CLERK AND ENAME = MILLER AND SAL
= 1300',' ','</e><e>') ||
'</e></coll>'), '/coll/e') )) xt;
l_str1 varchar2(4000);
l_str2 varchar2(4000);
l_str3 varchar2(4000);
l_str201 varchar2(400);
l_str202 date := sysdate;
l_str203 varchar2(400);
l_str204 varchar2(400);
l_str205 number;
l_str206 varchar2(400);
l_str207 varchar2(400);
l_str208 varchar2(400);
l_dummy pls_integer;
l_flag pls_integer;
n pls_integer;
m pls_integer;
p_rowid varchar2(100);
begin
n := 1;
l_flag := 0;
open c1;
loop
fetch c1 into l_str3;
exit when c1%notfound;
if l_flag = 1 then
l_str_var2.extend(n);
l_str_var2(n) := l_str3;
l_str2 := l_str2||':b'||n;
n := n+1;
l_flag :=0;
goto next_loop;
end if;

if trim(l_str3) = '=' or trim(substr(l_str3,1,3)) ='IN(' then
l_flag := 1;
end if;

if trim(substr(l_str3,1,3)) ='IN(' then
l_flag := 2;
m := length(l_str3)-2;
l_str_var2(n) := substr(l_str3,4,m-2);
-- l_str2 := l_str2||' IN(:b'||n||')';
l_str2 := l_str2||' = :b'||n;
l_flag := 0;
n := n+1;
goto next_loop;
end if;

l_str2 := l_str2 ||' '|| l_str3;

<<next_loop>>
l_dummy :=0;
end loop;
close c1;

l_str201 := l_str_var2(1);
l_str203 := l_str_var2(3);
l_str204 := l_str_var2(4);
l_str205 := substr(l_str_var2(5),1,2);
l_str206 := l_str_var2(6);
l_str207 := l_str_var2(7);
l_str208 := l_str_var2(8);
l_str3 := '
l_str201,l_str202,l_str203,l_str204,l_str205,l_str206,l_str207,l_str208';

dbms_output.put_line(l_str2 ||' using '||l_str3);
execute immediate l_str2 using
l_str201,l_str202,l_str203,l_str204,l_str205,l_str206,l_str207,l_str208;
end;
/

[Non-text portions of this message have been removed]

index query using like in oracle

 
----- Original Message -----
Sent: Monday, February 01, 2010 11:06 AM
Subject: Re: [indo-oracle] index query yg menggunakan like

 

yang paling ok, seperti di saranin, pake function based index.

kalo pake HINT Index, Oracle pasti jalan pake Index selama indexnya valid. jadi ngga mungkin Full Table Scan.
Masalahnya kalo statisticnya ngga update atau indexnya corrupt, Hintnya malah bisa bikin berantakan.

----- Original Message -----
From: Oracle Engineer
To: indo-oracle@yahoogroups.com
Sent: Friday, January 29, 2010 4:12 AM
Subject: Re: [indo-oracle] index query yg menggunakan like

jika like 'BLAH%'
ada kemungkinan dipakai karena oracle tau string pertamanya. inipun
tergantung seberapa bagus index tsb...

tapi kalau like '%BLAH%'
ini yg harus dipaksa-in index dgn hint
by default oracle ndak tau string pertamanya apa...asumsi akan semuanya :)

even dgn pemaksaan kehendak via HINT pun, oracle masih berasumsi mungkin
SEMUA data yg akan diambil, makanya ndak bisa range scan tapi dapetnya FFS
(fast full scan).

--
best regards
database specialist
http://www.dbs247.com
http://blog.dbs247.com

2010/1/28 Deddy Novrandianto <novrand@gmail.com>

>
>
> query query yg menggunakan sintaks like biasanya tidak dapat indexnya.
> kalau
> pun dapat, biasanya costnya masih tinggi.
> adakah cara melakukan tunning query yg menggunakan sintaks like agar bisa
> mendapatkan indexnya, atau ada fungsi padanan like yang dapat menggunakan
> index ?
>
> terima kasih...
>
>

[Non-text portions of this message have been removed]

----------------------------------------------------------

Internal Virus Database is out of date.
Checked by AVG - www.avg.com
Version: 9.0.730 / Virus Database: 270.14.151/2633 - Release Date: 01/19/10 12:49:00

[Non-text portions of this message have been removed]

__._,_.___
--
-----------I.N.D.O - O.R.A.C.L.E---------------
Keluar: indo-oracle-unsubscribe@yahoogroups.com
Website: http://indooracle.wordpress.com
http://www.facebook.com/group.php?gid=51973053515
-----------------------------------------------

Bergabung dengan Indonesia Thin Client User Groups,
Terminal Server, Citrix, New Moon Caneveral, di:
http://indo-thin.blogspot.com
.

__,_._,___

oracle Recovery Progress

 

 

Nimbrung dikit kalau boleh ...

Sebelumnya mau tanya, ada pakai dataguard atau bikin server standby
secara manual?
kalau pakai dataguard, mestinya tidak perlu membuat script seperti yang
anda buat, karena akan dihandle mekanisme dataguard secara otomatis.

Anyway, kalau lihat statement anda, saya rasa acuan anda cukup query
dari v$archived_log, bukan yang dari recovery process.
karena sequence yang ada di v$archive_log pasti sudah terbentuk
archivelognya di standby server dan sudah teregister tetapi belum
ter-applied. Masalahnya adalah apakah archivelog itu terkirim/terbentuk
dengan baik di standby, sehingga menyebabkan proses recoverynya ada yang
gagal, yang akhirnya menyebabkan log gap seperti pada kasus anda.

Dari kasus anda, mestinya saat kejadian tersebut, kalau kita query
v$archived_log, status kolom applied dari seq# 180053 - 180504 pasti
menunjukkan 'NO'. Padahal, file archive seq 180053 mungkin sudah
terbentuk di standby, tapi mungkin saja dia korup/rusak. sehingga anda
mesti copy ulang dari primary dan apply manual log tersebut.

regards,
joey

Mohammad Arief Pradipto wrote:
> Thanks responsenya pak Defri,
>
> maksud saya gini, saya mau bikin script yang mengotomatisasi kegiatan recovery ini, karena kegiatan recovery ini akan rutin setiap bulan. Jadi niat saya semula saya mau ambil last archived log yang ada di standby database, kemudian dari last sequence tersebut saya buat script yang akan ftp mengambil next sequence-nya dari server repository archive log per 100 record. Niatnya seperti itu, tapi kemudian terbentur masalah bahwa sequence yang diminta oleh recovery process tidak sesuai dengan record last archive yang sudah terarchived. Sehingga sekarang saat ini saya kejar manual dahulu, sampai last sequence yang diminta dan record last archived sudah sesuai, baru saya lanjut lagi dengan script saya.
>
> Thanks bantuannya masters
>
>
> regards,
>
> adipt
>
>

shrink lob segment

 
 

LOB akan allocate per block nya sesuai dgn parameter storage LOB bagian
CHUNK.
even jika length dari LOB tsb cuma 1K namun jika CHUNK diset 8K, akan tetap
8K dan itu ndak bisa di geser-geser.... CMIIW

cara lain yaitu dengan buat tablespace dgn block size variasi, 2K, 4K ....
dll
>

Fw: [indo-oracle] shrink lob segment

 
----- Original Message -----
Sent: Tuesday, January 26, 2010 4:21 PM
Subject: [indo-oracle] shrink lob segment

 

Dear all,

DB yg aku maintain punya lob segment yg saat ini sizenya udah sekitar 200GB.
Aku udah lakukan shrink sesuai dengan link dari metalink berikut, tetapi sizenya tidak berkurang.

https://support.oracle.com/CSP/ui/flash.html#tab=KBHome%28page=KBHome&id=%28%29%29,%28page=KBNavigator&id=%28bmDocTitle=ORA-00600%20[16613]%20when%20shrinking%20space%20in%20LOB%20column.&viewingMode=1143&bmDocID=808071.1&from=BOOKMARK&bmDocType=PROBLEM&bmDocDsrc=DOCUMENT%29%29

Berikut synthaxnya:

alter table <table_name> enable row movement;
alter table <table_name> modify LOB (LOB_column_name>) (shrink space);
alter table <table_name> modify LOB (LOB_column_name>) (shrink space cascade);

Mungkin ada teman2 yg pernah mengalami kasus spt ini.
Terimakasih atas bantuannya.

Rgds,
Sholeh

[Non-text portions of this message have been removed]

__._,_.___
--
-----------I.N.D.O - O.R.A.C.L.E---------------
Keluar: indo-oracle-unsubscribe@yahoogroups.com
Website: http://indooracle.wordpress.com
http://www.facebook.com/group.php?gid=51973053515
-----------------------------------------------

Bergabung dengan Indonesia Thin Client User Groups,
Terminal Server, Citrix, New Moon Caneveral, di:
http://indo-thin.blogspot.com
.

__,_._,___

cara menghilangkan oracle AS from services

Yth teman2 ...
Bagi yang pernah memakai Oracle Form 9i atau 10g, Pada saat kita jalankan aplikasi akan muncul "OracleAS Forms Services" kayak watermark di bagian belakang. Bagaimana cara menghilangkan background tersebut, apa yg harus disetting atau dikonfigurasi.
Terimakasih sebelumnya