Keresés

Részletes keresés

dorog.zultan Creative Commons License 2007.06.04 0 0 2346
Feladat:
MSSQL táblát
átemelni egy struktúrájában (még mező neveiben is) 100% -ig azonos Oracle táblába.
Minél kevesebb ODBC igénybevételével.
DE adat nem kerülhet ki 3. állományba se dump se export se semmilyen
más módon még titkosítva sem.
A központi ORACLE adatbázisnak kell "kinyúlkálnia" a külső rendszerekbe,.
amiből csak egy az MSSQL alapú alkalmazás.
Én az ORACLE oldalon állok, a másik oldalt nem tudom semmilyen mértékben sem befolyásolni.
Ők adják a hozzáférést az export táblákhoz, tárolt eljárásokhoz,
én vagy át tudom venni vagy nem (az már az én bajom ha nem).
Szóval erről lenne szó, remélem érthetően leírtam.
Előzmény: halaloszto (2344)
dorog.zultan Creative Commons License 2007.06.04 0 0 2345

Igen a KIÍRÓK SZERINT ez a közvetlen elérés
a text szócskától irtóznak sajnos.
Én ugyanúgy nem értem ahogy Ti sem.

"Ha irok javaban egy programot, ami jdbc-n olvas mssql-bol, es jdbc-n ir oracle-ba, az közvetlen eleres? "
Jelen pillanatban épp így csinálom (csak nem java-ban),
de ez a megoldás 2 db odbc-t használ (egy mssql felé egy meg Oracle felé)
ezt gondoltam lecsökkenteni egyre.

(Nagyon sok rossz tapasztalatom van az ODBCékkel.
én meg tőlük irtózom. :))
Előzmény: halaloszto (2341)
halaloszto Creative Commons License 2007.06.04 0 0 2344
Jo, hat nyilvan a feladat teljes specifikacioja nelkul csak a kodben lovoldozunk.

vajk
Előzmény: tnsnames.ora (2343)
tnsnames.ora Creative Commons License 2007.06.04 0 0 2343
Csak nagyon halkan jegyzem meg - a "közvetlen elérés" témához - szerintem a feladatot kéne megérteni, nem pedig a programozói arzenál potenciális eszközkészletét lajstromba venni.

Szép dolog a dumpolás meg a cron, sőt lehet az is, hogy túl régimódi vagyok, de én nem innen állnék neki az egész problémakörnek. Főleg, hogy tudható korábbról - az egyidejű? - GUI-s elérés is célfüggvény volt.

De ha tényleg "minden út Rómába vezet", még akár ez is odavezethet... ;)
Pugfan Creative Commons License 2007.06.04 0 0 2342
Egyszerű, működő felállás:
1. szkript tud dump-olni MSSQL-ből (akár a dump progival, akár ODBC-n keresztül)
2. látja az Oracle-t, tud bele insertálni (akár sqlloader, akár direkt OCI)

Ha batch, akkor mehet cron jelleggel, időnként; ha manuális indítás, akkor kell egy kis szerver a windows-os gépre, ami indítja az áttöltést.

Ha faksznizni akarsz, akkor mehet mindez SSL-el titkosítva...
A lényeg, hogy DUMP jelleggel mindig minden adatot áttöltesz Oracle alá.
Előzmény: dorog.zultan (2340)
halaloszto Creative Commons License 2007.06.04 0 0 2341
Mi az hogy kozvetlen eleres? Ha irok javaban egy programot, ami jdbc-n olvas mssql-bol, es jdbc-n ir oracle-ba, az kozvetlen eleres? Vagy ugyanez pepitaban, mondjuk C-ben?



vajk
Előzmény: dorog.zultan (2340)
dorog.zultan Creative Commons License 2007.06.04 0 0 2340
igen ez volna a legegyszerübb és legjobb megoldás
de a kiírásban szabályozták, hogy közvetlen elérés kell hogy legyen
a kmf között és ez semmi esetre sem lehet text.
Előzmény: halaloszto (2338)
halaloszto Creative Commons License 2007.06.04 0 0 2339
Sot, ha kattingtgatos tool kell, nezd meg az SQLDevelopert: http://www.oracle.com./technology/software/products/sql/index.html

Direkt van benne migracios tool. Persze ez foleg egyszeri dologra valo.


vajk
Előzmény: halaloszto (2338)
halaloszto Creative Commons License 2007.06.04 0 0 2338
Ez az egesz online vagy batch menne?

Mert ha utobbi, akkor akarmiben irsz egy mssql programot, ami egy txt fileba kitolja a tablat, es sql loaderrel betoltod oracle oldalon.

mssqlhez van is utility ami kidumpol egy tablat txt-be.

vajk
Előzmény: dorog.zultan (2337)
dorog.zultan Creative Commons License 2007.06.04 0 0 2337
1. "A PlSql Developer kifejezetten Oracle-re kitalált és hangolt utility"
Igen itt ismét látszik, hogy kezdő vagyok :)

"valamelyik szabvány mentén (ODBC, JDBC) dolgozó utilityre van szükséged."
tudnál esetleg erre egy két megbízhatóan működő programot mondani (leírni)?
közben azért utána fogok addig én is nézni

2. "(általad ugyan nagyon óhajtott, de meglehet a legrosszabb) megközelítés."
A struktúra egyszerű viszonylag, és a feladat is az.
Egyszerűen a külső MSSQL export tábláiból
(tárolt eljárásaiból aminek kimenete egy lekérdezés eredménye)
kell átemelnem az adatokat egy ugyanolyan felépítésű táblába.
"Autonomitás, szigorú vagy laza csatolás, hányrétegű architektúra"
Semmi ilyesmi gond nincs. Minden más már Oracle keretein belül
Mintha a_sql_tabla mezo1 varchar2(100), mezo2 varchar2(100) --->
a_ora_tabla mezo1 varchar2(100), mezo2 varchar2(100) átemelni.
Ennyire azért nem egyszerű de majdnem.
Előzmény: tnsnames.ora (2335)
dorog.zultan Creative Commons License 2007.06.04 0 0 2336
szia
köszönöm javaslatodat, őszintén szólva nekem kezdő szinten egy kicsit magas is,
de a "nagy tömegű adat mozgatására nem jó." mondatod alapján
nekem ez a megoldás nem lesz jó sajnos.
Mivel heti több gigás adatmennyiségre is számítanom kell.
Azért köszönöm:
dz
Előzmény: Pugfan (2334)
tnsnames.ora Creative Commons License 2007.06.02 0 0 2335
Szerintem minimum _két_ feladat amit kérdezel.

1. ...az a helyzet hogy nekem olyan kellene, amivel pl/sql dev. -el tudjam használni (irni-olvasni) a mssql adatbázis klf tábláit.
A PlSql Developer kifejezetten Oracle-re kitalált és hangolt utility (hardcore beégetetten). Azzal nem fogsz tudni MsSql-t pisztergálni. Ha heterogén adatbázisokat akarsz egyidejűleg használni, akkor valamelyik szabvány mentén (ODBC, JDBC) dolgozó utilityre van szükséged. Ilyenből annyi van mint égen a csillag külön-külön is.

2. ...de ha jól értem pl/sql dev tárolt eljárással mssql tábla adatait nem tudok pl insertálni ora táblákba?
Nem néztem utána, de kizárt, hogy az MsSql-nek ne legyen JDBC drivere (BTW van linuxos ODBC is!!). Akkor pedig Oracle Java-s tárolt eljárással elvben láthatod az MsSql-t. De ez csak egy (általad ugyan nagyon óhajtott, de meglehet a legrosszabb) megközelítés. Architect szempontból azért alaposabban végig kéne gondolnod a feladatot. Autonomitás, szigorú vagy laza csatolás, hányrétegű architektúra stb., /Mielőtt üzemszerűen Oracle store procedure-ből írsz-olvasol MsSql táblákat./

PS: Közbevetőleg nem nagyon értem, hogy a DBMS_PIPE, hogy került ide. Látnivalóan nem a Linuxos Oracle eléréssel van gondja szerintem a kérdezőnek, hanem épp a Windows-os MsSql-lel.
Előzmény: dorog.zultan (2329)
Pugfan Creative Commons License 2007.06.01 0 0 2334
1. doksiban nézz utána a DBMS_PIPE-nak
Amúgy a lényege: OCI-ban DBMS_PIPE-al lehet csatornát nyitni, aminek másik végén PL/SQL eljárások lehetnek a kliensek - megnyitja a csatornát, belepakolja amit akar (nagyon hosszú egy küldés nem lehet), típusosan (!), majd elküldi az üzenetet (csőposta).
A szerver program (nem Oracle) fogadja az üzenetet, kicsomagolja belőle a benne lévőket (DBMS_PIPE-ot használ ő is, bind-elt változókba kapja az értékeket), csinál amit akar, és esetleg válaszol, majd lezárja a csatornát.

A szervert lehet írni Java-ban, Python-ban (cx_Oracle), C-ben, C++-ban, Perl-ben... bármiben, mert ott is a DBMS_PIPE-ot használja.

Nem tudom a konkrét feladatot, de ez nagy tömegű adat mozgatására nem jó. Vezérlésre lehet használni (mi is erre használjuk: system parancsként tetszőleges más programok indítására), tehát ha jól behatárolt a feladat, akkor lehet vezérelni a szervert, ami már direkt nyúl az adatbázisba (a lényeg, hogy nem a PIPE-on kell keresztülmenni az adatoknak).
Előzmény: dorog.zultan (2333)
dorog.zultan Creative Commons License 2007.06.01 0 0 2333
"DBMS_PIPE-on vezérelt kis progi "
tudnál erre egy egyszerű példát adni?
nagyon kezdő lennék :(
Előzmény: Pugfan (2332)
Pugfan Creative Commons License 2007.05.31 0 0 2332
Oracle 9-től fölfelé lehet Java-ban is tárolt eljárást írni, ami PL/SQL-ből hívható.
De gyalog megoldásnak egy DBMS_PIPE-on vezérelt kis progi is megteszi.
Előzmény: dorog.zultan (2331)
dorog.zultan Creative Commons License 2007.05.31 0 0 2331

huu

ezeket nem de ismerem utána nézek...

de ha jól értem pl/sql dev tárolt eljárással

mssql tábla adatait nem tudok pl insertálni

ora táblákba?

Pedig ez lenne a lényeg...

Előzmény: Pugfan (2330)
Pugfan Creative Commons License 2007.05.31 0 0 2330
Hááát...
FreeTDS, jTDS
és Java-ban a tárolt eljárást!
Előzmény: dorog.zultan (2329)
dorog.zultan Creative Commons License 2007.05.31 0 0 2329
az a helyzet hogy nekem olyan kellene, amivel
pl/sql dev. -el tudjam használni (irni-olvasni) a
mssql adatbázis klf tábláit.
Van ilyen?
Előzmény: Pugfan (2328)
Pugfan Creative Commons License 2007.05.31 0 0 2328
MSSQL -> Oracle 10g adatbázis migrációhoz (egyeszeri (*100) futás) én egy Python programot írtam, ami natív OCI-t használt Oracle-höz, és ODBC-t az MSSQL-hez. Persze a windowsos gépen futott...
Előzmény: dorog.zultan (2327)
dorog.zultan Creative Commons License 2007.05.31 0 0 2327
Sziasztok,
tud valaki redhat ent. alatti 10g és mssql közé MŰKÖDŐ odbc -t?
Persze ha lehet legyen ingyenes de a MEGBÍZHATÓSÁG
lenne a legfontosabb
köszönöm:
dz
dorog.zultan Creative Commons License 2007.05.24 0 0 2326
ok köszönöm,
én is erre tippeltem

dz
Előzmény: crockl (2325)
crockl Creative Commons License 2007.05.24 0 0 2325
es check oszlop in ('1','0')
Előzmény: crockl (2324)
crockl Creative Commons License 2007.05.24 0 0 2324
char(1) ?
Előzmény: dorog.zultan (2323)
dorog.zultan Creative Commons License 2007.05.24 0 0 2323
Más adatbázisoknál használatos un: logikai mezőtípust
ora-ban mivel kell (illik) helyettesíteni?
halaloszto Creative Commons License 2007.05.23 0 0 2322
de de de
Előzmény: KingFishR (2321)
KingFishR Creative Commons License 2007.05.23 0 0 2321
Inkább pragma autonomous_transaction-nel, nem?
Előzmény: halaloszto (2310)
halaloszto Creative Commons License 2007.05.22 0 0 2320
Hat hogy formsban hogy kell azt nem tudom, de regen (ugy 7-8 eve) siman a dbms_lob get_chunk vagy hasonlo hivasaval plsql-bol darabonkent kiveszegettuk es irogattuk fileba.

vajk
Előzmény: cski (2319)
cski Creative Commons License 2007.05.22 0 0 2319

Sziasztok!

 

  Nem tudtok nekem abban segiteni,hogy hogyan lehet egy  képet(long raw  vagy blob tipusú) kiírni egy file-ban,Forms developer-ben,akkor ha a kép nagyobb mint 32767 byte.

 WRITE_IMAGE_FILE  nem segit.

 

köszönöm

Cs

 

dorog.zultan Creative Commons License 2007.05.18 0 0 2318
hu,
igaz! Elnézesed kérem, nem írtam tényleg.

dz
Előzmény: NevemTeve (2314)
halaloszto Creative Commons License 2007.05.17 0 0 2317
Az undo az, ahol a muveleted futasa kozben tortent modositasokat atmenetileg tarolja, hogy a muveletedre ne legyenek hatassal, a muveleted egy konzisztens adatbazist lasson.

Ha keves, akkor vagy sok a modositas a hatterben, vagy tul sokaig fut a te lekerdezesed. (a tobbihez kepest)

vajk
Előzmény: lakotars (2316)

Ha kedveled azért, ha nem azért nyomj egy lájkot a Fórumért!