Jag använder mig av SQL-Express och har följande kod som uppdaterar artiikeldatabsen tblArticle:
'Uppdatera tblArticle om artikeln redan finns
sSQL = "UPDATE tblArticle SET articleNumber = '" & sEnumber & "', articleName = '" & sArticleName & "', articleUnit = '" & sUnit & "' WHERE articleNumber = '" & sEnumber & "'"
objConn.Execute sSQL, lngRA, 128
iUpdatesArticle = iUpdatesArticle + lngRA
if lngRa = 0 then
'Lägga till artikeln i tblArticle om den inte finns
sSQL = "INSERT INTO tblArticle (articleNumber, articleName, articleUnit) VALUES ('" & sEnumber & "', '" & sArticleName & "', '" & sUnit & "')"
objConn.Execute sSQL,,128
iInsertsArticle = iInsertsArticle + 1
End if
Hur gör jag för att ändringen i artikelbenämningen i tblArticle ska följa med till tblCart?
Dvs ändras artikeln: EKK 3G1,5 ----> EKK 3G1,5R i tblArticle så ska även ändringen följa med till tblCart?
tblCart
*orderId
*userId
*articleName
*articleAmount
Mvh
Henrik
Lagra inte benämningen i cart-tabellen, plocka ut med join istället.
Skapa en trigger på artikeltabellen. Typ:
CREATE TRIGGER nameupdate
ON tblArticle
FOR UPDATE
AS
IF UPDATE(articleName)
BEGIN
UPDATE tblCart
SET articleName = i.articleName
FROM inserted i
INNER JOIN tblCart c ON i.articleNumber = c.articleNumber
END
Triggern är såklart inte testad, men kan ge dig ett hum om hur det kan se ut.
Jag vet inte hur SQL Server Management Studio Express fungerar, men det borde bara vara att köra koden om du inte hittar något ställe att lägga in triggers.
Enklast är om du använder dig av SQL Express 2005 Management Studio och väljer: New query, ändrar (så den passar dig) @nders förslag och klickar på execute.
Jag kommer att ändra min databasdesign enligt emissons förslag.... Därför kommer jag att använda mig av @nders alternativ 1. Men det blir när jag kommer hem igen i början på juli!
Mvh
Henrik
265 ms totalt · 4 externa anrop · v20260731065814-full.7d626504