ON UPDATE CASCADE ON DELETE CASCADE

16/05/2008 - 22:48 von Thomas Bendrich | Report spam
Hallo NG,

ich habe das Problem, daß ich per Tebellenerstellnungsabfrage keine
Aktualisierungs- und Löschweitergabe definieren kann. Laut Access-Hilfe soll
dies jedoch möglich sein. Selbst die Beispiele, die in der Hilfe enthalten
sind funktionieren nicht.

Meine Abfragen, die ich per OLE absetze sehen folgendermaßen aus und werden
direkt nacheinander ausgeführt:


CREATE TABLE [LocationType]([id] COUNTER(1,1) NOT NULL,[Name] VarChar(50)
NOT NULL,CONSTRAINT [LocationTypePrimaryKey] PRIMARY KEY([id]),CONSTRAINT
[LocationTypeUnique] UNIQUE([Name]));

CREATE TABLE [Location]([id] COUNTER(1,1) NOT NULL,[LocationType] Integer
NOT NULL,[Name] VarChar(50) NOT NULL,CONSTRAINT [LocationPrimaryKey] PRIMARY
KEY([id]),CONSTRAINT [LocationUnique]
UNIQUE([LocationType],[Name]),CONSTRAINT [LocationLocationType] FOREIGN
KEY([LocationType]) REFERENCES [LocationType]([id]) ON UPDATE CASCADE ON
DELETE CASCADE);

Die erste Tabelle wird ohne Beanstandung erzeugt. Die zweite Tabelle wird
nur erzeugt, wen ich "ON UPDATE CASCADE ON DELETE CASCADE" weg lasse. Aber
diese Integritàtsprüfungen werden benötigt. Im Access-Designer kann man diese
ja auch einstellen.

Vielen Dank schon mal.

Thomas Bendrich
 

Lesen sie die antworten

#1 André Minhorst
16/05/2008 - 22:54 | Warnen spam
Hi Thomas,

Am Fri, 16 May 2008 13:48:00 -0700 schrieb Thomas Bendrich:
ich habe das Problem, daß ich per Tebellenerstellnungsabfrage keine
Aktualisierungs- und Löschweitergabe definieren kann. Laut Access-Hilfe soll
dies jedoch möglich sein. Selbst die Beispiele, die in der Hilfe enthalten
sind funktionieren nicht.

Meine Abfragen, die ich per OLE absetze sehen folgendermaßen aus und werden
direkt nacheinander ausgeführt:

CREATE TABLE [LocationType]([id] COUNTER(1,1) NOT NULL,[Name] VarChar(50)
NOT NULL,CONSTRAINT [LocationTypePrimaryKey] PRIMARY KEY([id]),CONSTRAINT
[LocationTypeUnique] UNIQUE([Name]));

CREATE TABLE [Location]([id] COUNTER(1,1) NOT NULL,[LocationType] Integer
NOT NULL,[Name] VarChar(50) NOT NULL,CONSTRAINT [LocationPrimaryKey] PRIMARY
KEY([id]),CONSTRAINT [LocationUnique]
UNIQUE([LocationType],[Name]),CONSTRAINT [LocationLocationType] FOREIGN
KEY([LocationType]) REFERENCES [LocationType]([id]) ON UPDATE CASCADE ON
DELETE CASCADE);

Die erste Tabelle wird ohne Beanstandung erzeugt. Die zweite Tabelle wird
nur erzeugt, wen ich "ON UPDATE CASCADE ON DELETE CASCADE" weg lasse. Aber
diese Integritàtsprüfungen werden benötigt. Im Access-Designer kann man diese
ja auch einstellen.



per OLE? Welche Datenzugriffsbibliothek - DAO oder ADO?

ON UPDATE CASCADE und ON DELETE CASCADE sind Jet 4.0-Erweiterungen. Mit ADO
sollte das klappen. Siehe hier:
http://www.access-entwicklerbuch.de...05_02.html

Ciao
André


http://www.access-entwicklerbuch.de
http://www.access-im-unternehmen.de

Ähnliche fragen