Hi Abdelhadi
Aber wenn ich mit
Script auf die Datenquelle zugreiffe, um die Verbindung herzustellen, kommt die bereits genannte Fehlermeldung.
Ulrichs Beispielcode könnte erstmal ausreichen.
zum Bsp wie machst du das mit Einfache SQL-inserts/updates.
Eigentlich sehr einfach. Traditionelle RDBMS-Zugriffsumgebungen wie ODBC oder das davon konzeptionell erst einmal abgeleitete JDBC schreiben SQL-Statements direkt in bestimmte Methoden von Klassen.
Eine konkrete update-Zeile sieht dann ungefähr so aus (vermutlich anders):
connection.executeUpdate("INSERT INTO Persons (LastName, Address) VALUES ('Axel', 'St. Magdalenenstr. 94'")
Wichtig im Sinne von sehr wichtig ist, dass du am Ende nicht vergisst, die Connection zu schliessen!!!
Wenn man erst mal die Connection stehen hat, ist das sehr einfach.
Solange du aber nur eine einfache Tabelle zugreifen willst und einigermassen schnell Tippen kannst, ist es eigentlich relativ einfach und auch o.k. so.
Nimm einfach Ulrichs code und schreibe das entsprechende SQL da rein.
Ein einfaches SQL-Tutorial findest du hier:
http://www.w3schools.com/sql/default.asp Leider ist dieser Code der Connection bekommen, SQL Statements, Connection schliessen immer ziemlich lang und
<ich_drifte_jetzt_ein_bischen_ab_und_das_brauch_dich_erstmal_nicht_zu_interessieren>
sind Daten in Relationalen Datenbanken ganz anders organisiert als man es in den heute üblichen objektbasierten oder objektrelationalen Programmiersprachen tun würde (in Relationen und stark "normalisiert", d.h. hauptsache nix doppelt).
Deshalb ist es manchmal ein bischen schwierig, ein Mapping zwischen den Variablen/Objekten auf der einen und der Datenstruktur in der RDBMS performant hinzubekommen.
</ich_drifte_jetzt_ein_bischen_ab_und_das_brauch_dich_erstmal_nicht_zu_interessieren>
Aus dem trivialen Grund (viel code) und dem abgedrifteten Grund diese ganze Aufregung von ca. 5 RDBMS Zugriffs-Umgebungen auf der Microsoft-Seite, ca zur Zeit 6 ernstzunehmenden auf der Java-Seite (EJB Entity Beans, vanilla-JDBC, IBatis, Hibernate, JDO, dicconnected Rowsets) und 2 auf der Notes Seite (LSX/ODBC, LEI).
Aber es kann sein, dass ich diese stored procedures benötige, (schön wäre auch wenn du dazu auch ein Bsp hast.)
Ich denke es handelt sich um eine Microsoft Access DB, die auf einem sqlServer liegt.
Stored Procedures sind kleine Programme, die du in die Datenbank reinkompilierst. Weiss gar nicht, ob MS-Access das überhaupt anbietet. In DB2, Oracle, PosgreSQL oder anderen besseren RDBMS schreibst du die in einer speziellen, herstellerproprietären SQL-Erweiterungssprache, die meistens irgendwie P-SQL und so ähnlich heissen. Heute kann man das auch oft mit Java machen. Stored Procedures sind meist sehr performant, da sie direkt in der Datenbank rumliegen.
Aber wie gesagt: Ich würde das mehr als weiteren Schritt in deiner Beschäftigung mit SQL tun.
Von deinem Client Programm kannst du dann diese serverseitigen Procedures aufrufen:
// in JDBC (Java)
CallableStatement cs = con.prepareCall("{call SHOW_SUPPLIERS}");
ResultSet rs = cs.executeQuery();
Es gibt aber grundsätzlich nichts, was du nicht genauso mit den normalen SQL Befehlen Select, Update, Insert und Delete erreichen könntest (s. Tutorial-Link). Vielleicht geht es mit stored procedures schneller, aber das braucht dich erstmal nicht zu interessieren.
Microsoft Access und Microsoft SQL Server sind 2 unterschiedliche Produkte. Du meinst wahrscheinlich eine Access DB, die auf einem Windows Rechner liegt.
Gruss
Axel