Ben nu bezig om mbv een ASP-pagina via SQL een Access-2003 database te definiëren. Lukt allemaal goed, behalve het via SQL afdwingen van referentiële integriteit via de CONSTRAINT clausule.
de CREATE TABLE query ziet er als volgt uit:
zonder "ON UPDATE CASCADE" (regel 9) werkt ie prima (alle naamgeving / datatypes etc kloppen). Als ik via Access-->Relaties dezelfde referentiele integriteit wil instellen werkt het ook prima.
Maar als ik bovenstaande code gebruik krijg ik de volgende error terug:
"[Microsoft][ODBC Microsoft Access Driver] Syntax error in CONSTRAINT clause."
Deze error krijg ik ook als ik direct via een query in Access dezelfde bewerking uitvoer. Zelfs als ik de SQL-voorbeelden mbt CONSTRAINT uit de help van Access toepas via het uitvoeren van een query krijg ik dezelfde error. Heeft iemand een idee hoe ik dit kan verhelpen / wat ik verkeerd doe? Of zijn er andere manieren om via ASP mbv ADO(X)/SQL die referentiële integriteit af te dwingen?
de CREATE TABLE query ziet er als volgt uit:
ASP:
1
2
3
4
5
6
7
8
9
10
| "CREATE TABLE Metaveld (" & _ "Veld_ID COUNTER NOT NULL UNIQUE," & _ "Veld_Naam CHAR(50) NOT NULL," & _ "Tabel Int," & _ "Datatype CHAR(50)," & _ "Verwijst Int," & _ "CONSTRAINT PK_Veld_ID PRIMARY KEY (Veld_ID), " &_ "CONSTRAINT FK_Tabel FOREIGN KEY (Tabel) REFERENCES Metatabel, " & _ "CONSTRAINT FK_Datatype FOREIGN KEY (Datatype) REFERENCES Metadatatype ON UPDATE CASCADE, " & _ "CONSTRAINT FK_Verwijst FOREIGN KEY (Verwijst) REFERENCES MetaVeld);" |
zonder "ON UPDATE CASCADE" (regel 9) werkt ie prima (alle naamgeving / datatypes etc kloppen). Als ik via Access-->Relaties dezelfde referentiele integriteit wil instellen werkt het ook prima.
Maar als ik bovenstaande code gebruik krijg ik de volgende error terug:
"[Microsoft][ODBC Microsoft Access Driver] Syntax error in CONSTRAINT clause."
Deze error krijg ik ook als ik direct via een query in Access dezelfde bewerking uitvoer. Zelfs als ik de SQL-voorbeelden mbt CONSTRAINT uit de help van Access toepas via het uitvoeren van een query krijg ik dezelfde error. Heeft iemand een idee hoe ik dit kan verhelpen / wat ik verkeerd doe? Of zijn er andere manieren om via ASP mbv ADO(X)/SQL die referentiële integriteit af te dwingen?
"People should know when they're conquered..."
