Avatar billede ulrikp Nybegynder
07. april 2003 - 20:02 Der er 7 kommentarer og
1 løsning

DDL, ON DELETE CASCADE

Er der nogen der ved, hvordan man angiver kaskadevis sletning og opdatering v.hj.a. DDL SQL i Access 2000?
Jeg har prøvet med:

CREATE TABLE MAILLIST(
ID COUNTER PRIMARY KEY NOT NULL,
PatientId INT NOT NULL UNIQUE REFERENCES PATIENT(ID) ON DELETE CASCADE,
LastMinute BIT NOT NULL
)

... men lige så snart jeg tilføjer "ON DELETE CASCADE" får jeg fejlen "Syntax Error in CONSTRAINT clause".
Avatar billede ulrikp Nybegynder
07. april 2003 - 20:43 #1
Jeg tror selv, jeg har en idé om, hvad det kan være. Det har nok noget at gøre med at jeg skal have fat i den sidste nye Microsoft Jet...
Avatar billede arne_v Ekspert
07. april 2003 - 20:47 #2
Så vidt jeg ved kan du ikke gøre det i SQL.

Du kan derimod gøre det i VB.

Se f.eks.:
  http://www.experts-exchange.com/Databases/MS_Access/Q_10296417.html
Avatar billede ulrikp Nybegynder
07. april 2003 - 21:15 #3
Ifølge følgende MSDN artikel, skulle det kunne lade sig gøre, hvis man bruger Microsoft Jet...
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnacc2k/html/acintsql.asp
Avatar billede terry Ekspert
07. april 2003 - 21:43 #4
ulrikp> Are you using JET tables or MSDE/SQL Server?
Avatar billede terry Ekspert
07. april 2003 - 21:48 #5
I think you need to give the foreign key, otherwise what are we cascading?

.... REFERENCES TableName(FieldName) ON DELETE CASCADE ......
Avatar billede terry Ekspert
07. april 2003 - 21:49 #6
OOPs, you are already!
Avatar billede ulrikp Nybegynder
07. april 2003 - 22:11 #7
Jeg har fået det til at virke efter jeg installerede Microsoft.Jet.OLEDB.4.0.

Nu er jeg så bare stødt ind i et andet problem... Hvis jeg sætter et password på min Access database, får jeg følgende fejl, når jeg prøver at connecte til den via en ASP-side:
"Could not find installable ISAM."

Min connection-string ser sådan ud:
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & server.mapPath("/") & "\log\db.mdb;PWD=xx"

Hvis jeg fjerner password-beskyttelsen og ";PWD=xx" virker det fint ?!?

Der er point til den der kan løse dette problem (-:
Avatar billede ulrikp Nybegynder
07. april 2003 - 22:21 #8
Jeg fandt ud af det selv. Der skal stå:

"Jet OLEDB:Database Password=xx"

...i stedet for:

PWD=xx
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester