Oracle Datenbank



  • -> Der Unterschied zwischen Express Edition und Enterprise Edition liegt vor allem in der Anzahl der unterstützten CPUs bzw. des unterstüzten RAM.

    -> Oracle 10g ist erstmal nur ein DBMS. Als Client kommt SQL*Plus mit, welches unbrauchbar ist für größere Erledigungen. Da kannst du entweder auf das von Oracle als Beta zur Verfügung gestellte "Raptor" zurückgreifen oder aber auf ein externes Programm (zB Toad). Auf jeden Fall brauchst du aber SQL-Kenntnisse (sonst geht nicht nur bei Oracle im Datenbankbereich eher wenig). Für Oracle schaden PL/SQL-Kenntnisse auch auf keinen Fall. Als ausgezeichnetes Nachschlagewerk für Fragen empfehle ich: http://www.psoug.org/library.html

    -> Die Datenbank selbst administrieren kannst du mit dem Enterprise Manager, der mit dem DBMS mitkommt und eigentlich keine Wünsche offen lassen sollte 🙂

    -> Oracle ist sehr stark javalastig. Also kannst du praktischerweise Java verwenden um mit Oracle zu arbeiten. Sehr komofortabel ist es, die hauseigene Java-IDE JDeveloper zu verwenden die inzwischen auch sehr mächtig geworden ist. Dort kannst du deine ersten Erfahrungen mit Java und Oracle machen. Am besten über JDBC. Dieses "SQL integriert in Java" alias SQLJ ist der größte Mist mit dem ich jemals arbeiten musste - nicht nachmachen 😉

    -> Willst du später mit Java Enterprise-Anwendungen schreiben benötigst du zudem auch noch einen Application Server. Der hauseigene OC4J kommt mit dem JDeveloper als Entwicklungs-Server mit und du kannst die eigenne Applikationen direkt testen.

    Falls du noch fragen hast einfach stellen 🙂 Mit Tutorials oder Ähnlichem kann ich leider nicht dienen da ich da selbst nichts kenne. Ich habe mein ganzes Wissen aus dem Bereich aus der Schule. Vielleicht noch: http://tahiti.oracle.com/ sowie http://www.oracle-doku.de/

    MfG SideWinder



  • also ich hab mir jetzt Oracle DB XE besorgt und diese Oracle Developer Suite 10g, JDeveloper und SqlDeveloper hab ich extra noch geladen...

    Ich nhem an das ist dann jetzt das was man braucht 🙂

    Das buch was ich da gefunden hab basiert zwar auf der enterprise edition, bzw. peronal edition aber das ist ja kostenpflichtig. ich nehm mal an das XE system reicht fürn anfang zum rumspielen.



  • XE reicht für viele überhaupt. Wie gesagt, am Funktionsumfang dürfte nichts anders sein (ev. hast du keinen Enterprise Manager ... have a look).

    Die Developer Suite hättest du noch nicht benötigt, du programmierst ja mit Java und nicht mit den Oracle-4GL-Tools die mit der Developer Suite kommen (Oracle Forms & Reports sowie Oracle HTML DB)

    MfG SideWinder



  • also ich hab das DB XE jetzt installiert und wollte mich einloggen mittels des angegebenen links: 127.0.0.1:8080/apex, das problem ist, das keine verbindung herstellbar ist aber die Bd ist aktiv und läuft ohne fehlermeldung. neustarts etc hat nichts genutzt.

    ich sitzt zwar hinter einem router aber das ist doch der localhost der geht doch nicht über das gerät.



  • -> Sind auch alle Dienste gestartet?
    -> Hast du überhaupt schon eine DB angelegt oder nur die DBMS-Software installiert?

    MfG SideWinder



  • ich hab die SW installiert und im startmenü DB-Starten gewählt dann kam im statusfenster das dies passiert wäre und das wars. dann hab ich es mittels sqlplus versucht und nach dem connect befehl kommt nur Fehler 01033 Datenbank ist im begriff zu starten oder zu schließen...

    im tastmanager ist halt dieser oracle.exe dienst aktiv.

    ich hab keine datenbankdatei nur die DB-SW.



  • ich habs lösen können und jetzt geht das gute stück ... hab schon dieses einführungsbeispiel gemacht und etwas mit dem sql clienten in der beispieldatenbank rumgespielt 🙂 ansich ist alles recht übersichtlich und komfortabel aufgebaut.
    Wobei der rechner wohl doch etwas lahm ist für das ganze javazeugs 🙂

    mich würd aber mal interessieren wie man was umstellen muß, das man die DB auch von einem anderen rechneraus ansteuern kann... den passenden clientend azu habe ich wobei das auch nur son kommandozeilen ding ist.



  • Grundsätzlich gar nichts, wenn dein Listener auf TCP horcht (was sie afaik standardmäßig machen) nimmt er auch externe Anfragen an.

    Wichtig dabei ist es, im Falle eines Routers den Oracle-Datenbank-Port durchzurouten. Je nachdem was du machen willst: http://www.chebucto.ns.ca/~rakerman/oracle-port-table.html Welche Ports du für was genau freischalten musst weiß ich jetzt auch nicht. Für SQL*Plus-Zugriff reicht aber imho 1521.

    Zum Speed: Ja, für Java-Entwicklung kann viel RAM nicht schaden. Vor allem in Verbindung mit Datenbank und Application-Server würde ich ein 1GB empfehlen. 512 reichen da meistens nicht mehr.

    Wenn du dann auch noch eine Enterprise-Entwicklungsumgebung wie IBM-RAD für Java wählst wirst du selbst mit 1GB keinen richtigen Spaß haben 😉

    MfG SideWinder



  • ich hab jetzt rumgespielt und eine tabelle erstelltz und diverse datensätze eingetragen ... nun hab ich gelesen das man das auch automatisieren kann mittels SQLLoader. Ich hab das probiert und es hat auch geklappt aber nachdem ich mir die tabelle angeschaut habe waren die alten datensätze überschreiben. muß man da etwa was beachten oder wo liegt der trick? außerdem wurde das datum von01.10.1996 auf 01.10.96 gekürzt obwohl doch diese extra formatierung angegeben ist in der control.dat.

    sqlldr userid=Name controll=C:\control.dat

    Control.dat:

    LOAD DATA
    INFILE 'c:\eingabe.dat'
    INTO TABLE student
    FIELDS TERMINATED BY ','
    (mat_nr,name,vorname,einschreibedatum DATE "dd-mm-yyyy")

    Eingabe.dat:

    123456,Mayer,Efriede,01-10-1996
    234567,Mustermann,Anja,01-10-1997
    345678,Schmidt,Hugo,01-10-1995



  • Das Datumsformat bei der Ausgabe muss nicht dem Format in der Datenbank entsprechen - heißt: Dein Datum wurde gar nicht gekürzt sondern nur bei der Ausgabe in kurzer Form dargestellt.

    Dieses LOAD DATA ist afaik nur für das erstmalige Befüllen einer Tabelle gedacht, wenn die Daten nicht aus einer SQL-Datei kommen. Deswegen wurden deine Daten auch wahrscheinlich überschrieben.

    Datensätze in Zukunft am besten per SQL einfügen:

    INSERT INTO student VALUES ( 123456 , 'Mayer' , 'Efriede' , to_date('01-10-1996','DD-MM-YYYY') );
    

    MfG SideWinder


Anmelden zum Antworten