Du kannst das auch in einem Agenten machen.
Für JDBC und ODBC ist im Grunde der Typ der Datenbank egal.
Es muß nur einen entsprechenden Treiber geben.
Auch das SQLs, das du in deinen JDBC/ODBC code einarbeitest, ist weitgehend standardisiert (gibt SQL-92 und SQL-99 (bei letzteren nicht ganz sicher)).
Darüber hinaus besitzen die Datenbanken aber noch Zusatzfeatures. Für einfachere Beispiele braucht man die auch nicht. Wirkliche Datenbanken tendieren auch dazu, sich gegenseitig hinsichtlich der Features anzugleichen. Oracle scheint hier aber noch deutlich vorne zu sein.
MS-Access gilt nicht als wirkliche Datenbank. MySql auch nicht (aber gute Lösung für viele Webprojekte). Bei MySQL gibt es Hoffnung auf Besserung, da es dort nun offenbar eine starke Kooperation mit SAP gibt (und SAP braucht eine wirkliche Datenbank).
Probleme aus meiner Erfahrung machte lange Zeit noch das handling mit von der Datenbank automatisch generierten keys. Hier wurden aber mit JDBC3.0 und auf Seite von z.B. DB2 deutliche Fortschritte gemacht.
In Java benutzt man heute meist die JDBC extension Api von J2EE. Tomcat hat das inzwischen auch integriert. Beliebt ist hier v.a. javax.sql.Datasource. Diese Klasse liefert einen Pool an Connections an und nicht wie früher, wo dauernd Connections generiert wurden (relativ hoher Ressourcen-Anspruch) bzw alles über eine Connection lief (kann zum Engpaß werden).
Ich hab aber keine Ahnung, wie man das unter Notes verwenden könnte. Ich glaube das geht gar nicht. Ich denk da manchmal drüber nach.
In Java gab und gibt es zum Thema Datenbankzugriff im letzten Jahr dramatische neue Entwicklungen im openSource Bereich.
Man benutzt dann frameworks, die irgendwo auf JDBC aufsetzen. Man selber greift dann aber auf das Framework zu (Hibernate, Spring Framework). Das sorgt für übersichtlicheren und schneller zu erstellenden code.
Ein gutes JDBC-Beispiel (leider mit Access) gibt es hier:
http://java.sun.com/docs/books/tutorial/jdbc/index.htmlIn Notes gibt es ein Problem mit dem traditionellen Weg des Ladens des JDBC-Treibers.
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
geht nicht.
Du musst stattdessen:
drv = new sun.jdbc.odbc.JdbcOdbcDriver());
nehmen.
Leider bin ich momentan ziemlich busy. Ich kann mal die Beispiele von dem Tutorial für notes-Agenten umschreiben und MySQL und DB2 als weitere Datenbanken unterstützen. Aber nach der Zertifizierungs-Offensive dieses Winters, oder nächstes WE.
Das ist natürlich nur ein Anfang. Es gibt darüber hinaus Tonnen von extrem guten Überlegungen zur Einbindung von Relationalen Datenbanken in Objekt-Systeme.
Als selbsternannte Elke Heidenreich dieses Forums empfehle ich Fowler, Patterns of of Enterprise Application Architecture, Rod Johnson, J2EE Design and Development und Kyle Brown et. all, Enterprise Java Programming with IBM Websphere für gute Zusammenfassungen des Standes der Diskussion.
MS.NET wird sich dieses Jahr stark in corporate Germany verbreiten. ODBC ist im Grunde eine veraltete Technologie.
In Java tendiert man stark dazu im Rahmen von geschichteten Architekturen eine Schicht von spezialisierten Datenbankzugriff-Klassen zu haben. In Notes würde ich das auch so versuchen. Die Datenbank (RDBMS) als Subsystem betrachten und einen Satz von spezialisierten Funktionen (oder Klassen) dafür schreiben.
Gruß Axel