Nah, csak megvan: http://squirrel-sql.sourceforge.net/
Egy ingyenes, toadszerű programocska.
...
Nah, csak megvan: http://squirrel-sql.sourceforge.net/
Egy ingyenes, toadszerű programocska.
...
Jól néz ki, csak nem derül ki a képekből, hogy PL/SQL-re alkalmas-e.
=Kilroy was here============================ooO=*(_)*=Ooo=======
Pár éve még az volt. Illetve pontosítsunk: én DBA-jellegű munkakörben kerültem kapcsolatba az Oracle-lel, nem használtam fejlesztési céllal. Amire nekem kellett (néhány kisebb SQL script futtatása, adatbázis matatás, hasonlók) arra alkalmas volt. Viszont rövid ideig játszadoztam vele, mert a cég vett néhány TOAD példányt, attól kezdve azt használtam.
...
Az SQL DEVELOPER miért nem jó? a TOAD miért jobb?
Természetesen a kérdés megválaszolásakor azt kell először eldönteni, hogy ki-mire akarja használni az eszközt.
SQL tanulására az SQL Developer kitűnő eszköz, biztos szívesebben használnám, mint az SQL*Plust, ezért is ajánlottam ezt is, és akár most is ajánlom.
Ugyan a kérdésedben feltett egyik eszközt sem használom, de azt tudom, hogy szerintem a PL/SQL Developer miért jobb mindkettőnél, egész pontosan az én munkámhoz miért jobb.
- Az SQL Developert akkor próbáltam ki, amikor a cégnél linuxra álltam át windowsról, és fejlesztőeszközt kerestem a munkámhoz (végül inkább wine+PL/SQL Developer lett használva).
- A TOAD-ot kb 10 éve használtam, így arról már csak poros emlékeim vannak.
Van egy dolog, amiben az SQL*Plus nagyon jó, és sajnos kevés sql fejlesztő eszköz tudja, ez az összetett "batch" sql szkriptek futtatása. Amikor a lekérdezés eredményeként megjelenő karakteres táblázatokat formázni akarom, illetve 1-2 bemenő paraméterrel több szkriptet akarok lefuttatni egymás után.
pl. ez az egyszerű szkript:
set verify off
accept deptno prompt 'Osztaly: '
select * from dept where deptno=&deptno;
select * from emp where deptno=&deptno;
Ezt a PL/SQL Developerben tudom futtatni/használni.
A másik, amit nagyon szeretek a PL/SQL Developerben, az a PL/SQL kód futás közbeni debugolása.
A többi plusz tulajdonsága igazából már csak öröm, hogy de jó, még ezt is meg lehet benne csinálni. Pl. a lekérdezés eredményének mentése bármikor excelbe, a lekérdezés eredményében az adatok szerkesztése, a verziókezelőkhöz való kapcsolódás, a PL/SQL szerkesztő automatizmusai, a futás utáni statisztikai információk, stb....
Viszont az SQL Developernek és a TOADnak is nagy előnye a több adatbázis kezelőhöz való kapcsolódás, és ezáltal az adatok könnyebben átjárhatóak, de szerencsére nekem csak Oracle adatbázissal kell dolgoznom, így ez nem volt szempont a választáskor.
[ Szerkesztve ]
=Kilroy was here============================ooO=*(_)*=Ooo=======
Miért dobja el az ORACLE a nézetre akasztott instead of triggert ha ráfordítok a nézetre?
Hello!
Sajnos még mindig nem sikerült összehoznom egy oracle servert. Próbáltam ugye bár win7-en, most meg vmwarel feldobtam egy win server 2003-at. Simán telepítettem, portot amit megadtam telepítéskor azt megnyitottam routerben, hostnak pedig a win server belső ip-jét adtam meg. Telepítés végén a teszt se fut le. Vettem fel listenert Net assistantal, de még úgy se megy. Az Enterprise Manager Consolba, ha rákattintok a létrehozott szerverre akkor kéri a felhasználó/jelszó párost, de ott se enged belépni, mert No listenert ír. Néztem a szolgáltatásokat, de ott nekem csak két oracle-s van. Ha jól tudom többnek kéne lennie.
Nekem csak ezek vannak: OraclMTSRecoveryService és OracleOraHome92ClientCache.
Egy 9i-s változatról van szó.
Valaki segítsen légyszi!!
Kicsit pontosabban mit próbáltál telepíteni?
=Kilroy was here============================ooO=*(_)*=Ooo=======
_Eldobja_? Nem csak invalid státuszt kap?
...
Nálunk a verziószám: 9.2.0.7.0, és nem dobja el a triggert.
=Kilroy was here============================ooO=*(_)*=Ooo=======
ora9i_client.iso . Suli szerverről huztam le, mert elvielg ott is ez fut. Ezt administrator módban telepítettem. Most nézem az oracle-s letöltések. Win server 2003-ra mit ajánlotok? win server 2008-as 11g fel megy rá?
tehát, amit telepítettél, az a kliens. Ott van a fájl nevében
Ha a saját gépeden szeretnéd a szervert futtatni, akkor a szerver telepítőjét kell letölteni.
Erre javasoltam Neked az Oracle XE-t.
=Kilroy was here============================ooO=*(_)*=Ooo=======
Igen azt furcsáltam én is. De akkor minek kérdezett a telepítőbe olyat hogy hostname,port..sid meg stb és mért próbált tesztet csinálni a telepítés végén? Akkor mit tesztelt, nem azt hogy megy-e a szerver?:S
Megpróbálta ellenőrizni, hogy sikeres volt-e a telepítés. Ennek legegyszerűbb módja, hogy rákapcsolódik egy szerverre. Ha az megy, akkor valószínűleg minden OK.
...
Okés! Na felraktam az XE-t vmwaren keresztül winserver2003-ra. Be is tudtam lépni böngészőn keresztül az adminisztrációs részbe. A szerver is fut, viszont ha visszaugrok win7re és sqlplusal akarnék csatlakozni akkor nem megy. ip-nek a win server ip-jét adtam meg, de mintha nem találná. Az ip elé amit kell írni sid-et az micsoda? mert telepítéskor nem kérdezett ilyet:S
host(IP) = 127.0.0.1
port=1521
SID=XE
(emlékeim szerint fontos, hogy nagybetűvel írd, bár windows esetében még ez sem biztos)
...
Sajnos nem tudok csatlakozni. Leírnám mégegyszer hogy mit hogyan telepítettem mert lehet valamit nem jól csináltam:
Win7-en vmware-rel winserver2003 és ezen van telepitve az adatbázis. SQL plussal pedig probálom elérni a szervert win7ről. Router van itthon, winserver külön ip-t kapott a routertől. Routerben megnyitottam az 1521-es portot a winserverre, hátha...
Sqlplus kapcsolódáskor beirtam azt a felhasználó jelszó párost amivel az oracle config részéhez belehet lépni, csatlakozási cimhez meg probáltam ezt a kettőt: XE_127.0.0.1 és XE_winserver_belső_ipje. De mindkét esetben ezt kapom: A szolgáltatás neve nem meghatározható.
Esetleg kell még valami portot megnyitni? Vagy valami configba beállítani?
Először próbáld azon a gépen, ahová felraktad az XE-t!
Egyébként is ott kellene engedélyezni a 1521-es portot, az XE-t futtató windows tűzfalán, de abban sem vagyok biztos, hogy az XE hajlandó külső gépről fogadni klienseket. (azt tudom, hogy egy erősen butított darab a normál szerverhez képest)
...
Azon a gépen fut, teszteltem. Port is nyitva van.. de kivűlről mégse tudom elérni.
Ha nagyon ragaszkodsz hozzá, hogy kívülről érd el, akkor keresd meg a kliensen a tnsnames.ora file-t! (windows-on nem tudom, hol van - lehet, hogy valami samples nevű könyvtárban, akkor feljebb kell másolni egy szinttel - unixon általában a $ORACLE_HOME/network/admin alatt szokott lenni)
Ebbe kellene valami ilyesmi:
XE =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP) (HOST = <oracle szervered címe>)(PORT = 1521))
)
(CONNECT_DATA = (SID = orcl))
)
Előfordulhat, hogy a SID = helyett SERVICE = kell...
...
Köszi megy! Erről a lépésről teljesen elfeledkeztem, pedig mikor a suli szerverhez csatlakoztam akkor is meg kellett csinálni
Mégegyszer köszi!!
akkor nem kell XE-t letöltenem.
---
Ha netán megint belepofáznék a témába, valaki üssön a kezemre! Amikor utoljára Oracle-lel foglalkoztam, megfogadtam, hogy soha többé nem nyúlok hozzá, erre tessék... majdnem telepítettem egyet.
...
Amúgy nem muszáj két külön windowst futtatnod, egy windows alatt is remekül működik a szerver és a kliens
=Kilroy was here============================ooO=*(_)*=Ooo=======
Tudom, csak ki akartam próbálni, hogy működik-e ha kivűlről csatlakozok hozzá. Meg hát így a win 7-et ne pakolja tele semmivel és könnyebb is az eltakarítása ha már esetleg majd nem kell.
Lortech -> köszönöm. Gyors, pontos, türelmes, megbízható.
Én a 10.2.0.4-es vista/w2k8 32bit patch-et keresném
A megkérdezettek közel egyharmada egyetért, viszont a többit nem érti. Az egyharmad azt az egyet se érti.
Sziasztok!
Tudnátok nekem segíteni abban, hogy mi különbség van a:
char(x) - varchar(x) - varchar 2(x),
number(x) - number(x,y) között?
Mikor melyiket érdemes használni?
char(x) : fix hosszú sztring, x hosszúságú sztringnek foglal helyet. Max 2000 byte.
varchar2(x): változó hosszúságú sztring. Maximum x hosszúságú sztringet tárol, de csak az aktuális hossznak foglal helyet. Max 4000 byte.
A varchar nem használatos.
number(x): x hosszú egész érték
number(x,y): x hosszú érték melyből y a tizedes hossz.
#227 Tárgytalan!
A megkérdezettek közel egyharmada egyetért, viszont a többit nem érti. Az egyharmad azt az egyet se érti.
Köszönöm!
Másik kérdésem ha egy dátum típusú mezőben sysdate-eket mentek el, akkor azokat hogy tudnám csoportosítani? Mert group by-al nem megy, gondolom azért mert nem csak évet,hónapot meg napot ment.
Mi az, hogy nem megy? Évet, hónapot, napot és időpontot tárol másodperc pontossággal, persze számként és nagyon frankón aggregálja a group by.
[ Szerkesztve ]
Nem tudom, de egy példa rá:
Van egy date típusú mező (sysdate, sysdate-1, sysdate, sysdate-4....) , meg van egy number ahol az eladások száma van. És ha egy nap többször kerül feljegyzésre az eladások száma akkor ha azokat összeszámolom és group by-al csoportosítom a napokat, akkor ugyanazon napokat külön veszi. Gondolom azért mert nem másodperc pontossággal lettek a rekordok felvéve. Van erre valami megoldás?
trunc(dátum) napra csonkolja a mezőt, ezt érdemes betenni a group by után.
A megkérdezettek közel egyharmada egyetért, viszont a többit nem érti. Az egyharmad azt az egyet se érti.
Esetleg a dátum tárolására a to_date(sysdate,'YYYYMMDD'). Nincs zavar az időpont miatt.
A trunc-os nem működött, de ez a to_date-es jó. Köszi!!
Kéne még egy kis segítség egy videokölcsönzös lekérdezéshez:
Van két tábla :
Tag tábla a következő mezőkkel: TNEV, TCIM, TKOD
Kölcsönzés tábla a következő mezőkkel: TKOD,FKOD
Azoknak a nevét kéne lekérnem akik még nem kölcsönöztek ki filmet. (Ha valaki kölcsönöz akkor annak a személynek a tkod-ja bekerül a kölcsönzés táblába és a kölcsönzött film kódja is)
Talán egyik megoldás lehet:
Select t.TNEV, t.TCIM, t.TKOD from tag_table t, kolcsonzes_table k
where t.TKOD(+) = k.TKOD and t.rowid is null
[ Szerkesztve ]
a group by után alakítsd a dátumot karakterré
pl:
to_char(sajatoszlop,'yyyy') - évre csoportosít
to_char(sajatoszlop,'yyyymm') - év-hónapra csoportosít
to_char(sajatoszlop,'yyyymmdd') - év-hónap-napra csoportosít
=Kilroy was here============================ooO=*(_)*=Ooo=======
select * from tag u
where not exists (select 1 from kolcsonzes f where f.tkod=u.tkod);
[ Szerkesztve ]
=Kilroy was here============================ooO=*(_)*=Ooo=======
köszi
Valakinek van gyakorlata adatimportálásban/exportálásban? ahhoz lenne pár gyakorlati kérdésem:
milyen fájltipusokból és hogyan lehet importálni? és milyen fájltipusokba lehet exportálni?
[ Szerkesztve ]
van.
elérhetőségeim az adatlapomon.
Amúgy ha telepíted a oracle kliens cdről a utilityt, akkor lesz egy sql*loader nevű programod, amivel be tudsz tölteni tetszőleges fálokat.
=Kilroy was here============================ooO=*(_)*=Ooo=======
utánanézek és ha nem boldogulok akkor kereslek. Köszi!
Sziasztok!
Nekem nem sok közöm van ide, csak felhasználója lennék egy programnak ami a következő hibaüzenetet adja:
Hiba a KAPCS_WHEN_BUTTON_PRESSED triggerben:
302000:non-Oracle exception
A programmal foglalkozó azt mondta, hogy töröljem le az összes Java motort és tegyem újra amit ők javasolnak hozzá.
Ezt hiába csináltam meg ugyan az a hiba. Lehet ezzel valamit kezdeni?
[ Szerkesztve ]
Ez egy egyedi hibaüzenet, csak a programozó tud segíteni neked ebben.
=Kilroy was here============================ooO=*(_)*=Ooo=======
Megoldódott, de fogalmam sincs miért.
Feltettem egy másik gépre ott működött, majd újra próbáltam és elindult.
Köszönöm egyébként!
Sziasztok! Lenne egy probléma amit bedobnék a közösbe:
Adott egy linux szerver (RedHat Enterprise Linux 4) és Oracle 9i adatbázis szerver.
Új szervert kell beüzemelni és a következő hibaüzeneteket dobálja indításkor:
ORA-01034: ORACLE not available
ORA-27101:shared memory realm does not exist
és még van egy op-rendszer szintű hiba is. // hogy nem találja a fájl-t de azt nem mondja meg melyiket.
Nos tippek trükkök? / távolról kaptam a kérdést nem nálam fordult elő.
Ahogyan nézem ez lesz a megoldás:
ORA-01034 hibára:
You may find that you are experiencing ORA-01034 when attempting to upgrade your Oracle database. MOSC offers advice on this issue with ORA-01034 in versions9.2 and 10.2 on any platform. Typically, in this case, ORA-01034 occurs prior to selecting the database you plan to upgrade in the DBAU, or Database Upgrade Assistant.
ORA-01034 is thrown during you attempt to upgrade because there is an invalid entry in one of the following files:
/etc/oratab
/var/opt/oracle/oratab
You will find that ORA-01034 is thrown because of these files because here is a discrepancy between ORACLE_HOME and ORACLE_SID
To resolve ORA-01034, be sure that the ORACLE_HOME and ORACLE_SID properly match within the files /etc/oratab or /var/opt/oracle/oratab .
As a last step in solving your ORA-01034 problem and running DBUA, make sure that ORACLE_HOME is set to 'old' home, not 'new' home.
ORA-27101
MOSC offers valuable information regarding ORA-27101. ORA-27101 is often thrown along with ORA-01034 during database installation. ORA-27101 is also seen after installation is complete, when attempting to use SQL*Plus.
To resolve this issue with ORA-27101, you should be sure that ORACLE_HOME and ORACLE_SID are correct, and ORACLE_HOME should not have trailing slash. Here is the MOSC example to accompany ORA-27101 resolution instructions:
For checking on trailing trash:
$ echo $ORACLE_HOME
$ /app/oracle/817/ << Incorrect
$ echo $ORACLE_HOME
$ /app/oracle/817 << Correct
For ORACLE_SID:
$ echo $ORACLE_SID
$ ora817
$ ps -ef | grep smon
ora_smon_ORA817
(Here, ORACLE_SID setting has been altered from ora817 to ORA817.)
Basically, to resolve ORA-27101, Once ORACLE_HOME and ORACLE_SID are correct, and then attempt to start SQL*Plus.
--------------------------------------------------------------------------------------------------------------------------------
ORA-27101 may indicate that the system was not able to find the shared memory realm. So, you could be receiving ORA-27101 because you tried to modify the database parameters such as SGA size. If this is something that you have done and feel this is why you are encountering ORA-27101, you can try to bring back the original parameters. Another cause of ORA-27101 is that the instance pointer, or ORACLE_SID, may be gone. If this is the case, to resolve ORA-27101 you should first try looking for ORACLE_SID. There are several different methods depending on what server you are using:
For Unix- try using "echo $ORACLE_SID"
For Windows- right click on My Computer˘properties˘Advance Tab˘Environment Variable. You can view here where or not ORACLE_SID is defined.
If you find in either cases that ORACLE_SID is blank or undefined, this may be the cause of ORA_27101. You can then set the ORACLE_SID appropriate for the database to resolve ORA-27101.
[ Szerkesztve ]
ha nem túl nagy az adatbázis, akkor én nem foglalkoznék az upgrade-el, hanem simán export-importtal oldanám meg.
Sok későbbi hibától is megóv, valamint ezek az upgradek nem valami jól dokumentált dolgok.
Ha azonos a verziószám és az OS, akkor még egyszerübb, mert csak az adatfájlokat kell "mozgatni".
Ha adsz operációs rendszert és pontos verziót, esetleg a metalinken utána tudok nézni, de csak kedden.
=Kilroy was here============================ooO=*(_)*=Ooo=======
egyenlőre elég ennyi! ha gondban leszek szólok! Köszi szépen!
Sziasztok!
Én is szeretnék kérdezni Oracle Designerrel kapcsolatosan hátha tud valaki valami okosat
Bound itemre tennék pop list-et de statikus listát szeretnék szóval nem táblahasználósat.
De az istennek nem jövök rá még.. Unbound itemre lehet az ok ott megadhatom az allowable valueseket de bound-ra mindenképpen akar egy táblával ellátott lov-ot.. Maradjak unboundnál és triggerrel töltsem a boundot vagy van erre megoldás? Form builder kizárva
Köszi előre is a választ!
Hello!
Webes Oracle expresszben az egyik tábla egyik oszlopa dátum formátumú. Mikor egy sort beszeretnék illeszteni a dátum részt sose fogadja el. A formátum elvileg RR-MON-DD, amit nem teljesen értek... de nekem DD-MM-YYYY kellene.
Hiába fut le hibátlanul az
alter session set nls_date_format='dd-mm-yyyy'; nem változik meg a formátum:S