Har en databas med tabellerna ordrar och kortnummer som relation i databasen. När jag försöker radera en post där kunden har anget sitt kortnummer så får jag detta felmeddelande:
Microsoft JET Database Engine error '80004005'
The record cannot be deleted or changed because table 'kortnummer' includes related records.
så här ser koden för att radera en post ut:
<%
'0===================================================================================0
' Ta bort order
'0===================================================================================0
'on error resume next
Set Database = Server.CreateObject( "Adodb.Connection" )
Database.Provider = "Microsoft.Jet.OLEDB.4.0"
MdbFilePath = Server.MapPath("databasen.mdb")
Database.ConnectionString = "Data Source='" &MdbFilePath& "'"
Database.open
SQL = "DELETE FROM ordrar WHERE idOrder ="& Request.Querystring("idOrder")
Database.Execute(SQL)
Response.write "grönt"
set Database = nothing
'0===================================================================================0
%>
Själva koden verkar det inte vara något direkt fel på.
Vilka relationer har du i databasen?
Det kan vara så att du kan inte kan ta bort relaterade poster eftersom det inte bli "jämvikt" då. Om du tar bort en post i ena tabellen måste du kanske ta bort i den andra också...
japp det verkar vara så, men hur gör jag för att ta bort en post i den ena tabellen, och samtidigt ska inlägget som är knutet till den relationen oxå tas bort?
alltså när jag vill ta bort en order så har jag kortnummer som relation till idNumret på ordern
Antingen gör man två delete, först i detaljtabellen och sedan i huvudtabellen eller så kan man (beroende på dbms) definera sina foreign keys så att en delete i huvudtabellen även innebär en delete i detaljtabellen.
att då jag raderar en post från exempelvis produkter så skall allt som har relation med den produkten raderas, jag vet inte om det är just d som kallas cascading, men det e vad jag behöver hjälp med
Om du vill ha cascading delete så skall det gå att sätta med hjälp av någon checkbox som finns där man definierar relationer i Access. Jag kan hjälpa inte mer än så.