Extended SQL bei Access Datenbanken

si031006

Mitglied
Hi!

Hab folgendes Problem:
Möchte eine Tabelle in einer Access Datenbank mittels SQL erzeugen, wobei eine Spalte eine Defaultbelegung bekommen soll.

Also hier mal ein kleines Beispiel:

CREATE TABLE TEST
(
[MEINE_ID] COUNTER,
[NAME] VARCHAR(20) DEFAULT IRGENDWAS,
[ZAHL] INT
)

Sobald ich diese Abfrage wegschicke bekomme ich einen tollen Syntaxfehler. Hab rausgefunden es klappt, sobald man den Eintrag DEFAULT IRGENDWAS weggibt.
Das liegt laut einigen Foren daran, das bei den ODBC Einstellungen hier ein Hakerl bei Extendend SQL gesetzt werden muss.
Soweit, sogut. Ich möchte jetzt allerdings mal folgendes ändern:

1.) Eigentlich will ich KEINEN DSN Eintrag machen müssen (bitte jetzt keine Diskussion warum nicht), ich möchte das einfach nur über die Zeile
myDB = "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ="+this.aktAccessFile.getAbsolutePath();
lösen. Meine Frage ist jetzt, obs dafür einen Parameter gibt wo das gesetzt wird. Vielleicht kann man das auch ins Properties Objekt hineingeben, allerdings weiss ich nicht wie der Key dazu lautet.

2.) Das Properties Objekt. Gibt es irgendwo eine Liste welche Keys erlaubt sind und welche nicht? Sicher, usern und password gibts immer. Aber wo finde ich zum Beispiel eben eine Liste, welche mir sagt das auch ein Eintrag charSet akzeptiert wird oder was es sonst noch für Einstellungen gibt?

3.) Falls es nur mit DSN Eintrag funktioniert. Gibts in Java die Möglichkeit einen Eintrag automatisch (falls noch nicht vorhanden) erstellen zu lassen? Falls ja, hat diesbezüglich irgendwer ein Beispiel parat?


Danke für die kommende Hilfe im voraus!
 
Zuletzt bearbeitet:
Sollte es nicht heißen:

SQL:
[NAME] VARCHAR(20) NOT NULL DEFAULT 'test'

Wo hast du denn das mit dem extended SQL gelesen?
 
Nö, geht auch nicht. Klappts bei dir mit einer Defaultbelegung bei Access?

Das mit dem ExtendSQLState steht in einem Office Forum.
Such einfach mal im Google nach ExtendedAnsiSQL access, dann kommen massenhaft Einträge zu diesem Thema.
Allerdings schaff ich es nicht, das er das irgendwie ohne manuelle Eingriffe von meiner Seite (oder besser gesagt des Users) dann automatisch übernimmt...
 
Hmm...

Also wenn ich mir das so durchlesen scheint damit gemeint zu sein:
Java:
myDB = "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ="+this.aktAccessFile.getAbsolutePath()+";ExtendedAnsiSQL=1";
 
Klopp Access in die Mülltonne und verwende eine richtige Datenbank.

Abgesehn davon, dass deine Aussage total merkwürdig ist, wüsste ich gerne, was in deinen Augen eine "richtige Datenbank" sein soll.

Und dann kommt noch hinzu, dass Access nicht mal ne Datenbank ist, sondern ein Frontend für eine darunterliegende Datenbank und die Datenbanken, die damit verknüpft sind, sind "richtige Datenbanken".
 
Also mittlerweile gehts bei mir. Ist ein Servicepackproblem. Einfach das neueste runterladen, installieren und dann klappts wunderbar (hätt ich auch gleich drauf kommen können)....

Weiss mittlerweile irgendwer wie ich eine Auflistung aller möglichen Properties kriege?
 

Neue Beiträge

Zurück