webForumDet fria alternativet

Ms Sql Server

7 svar · 375 visningar · startad av Nickemannen

NickemannenMedlem sedan aug. 20003 575 inlägg
#1

Hej jag sitter och provar lite saker i VS.NET's sql server, jag har där skapat två tabeller. Som kan se ut såhär t.ex.

Customers
CustomerID
CustomerName

PhoneNumbers
PhoneId
FKCustomerID
PhoneNumber

Här har jag skapat en relation mellan CustomerID och FKCustomerID, men jag vill att när jag tar bort en Customer, så vill jag att alla PhoneNumbers också skall försvinna, är ganska ny på att just bygga databaserna med bestämda relationer, har letat lite och kanske triggers är något men jag vill gärna att någon förklarar mig hur man skall gå tillväga för att detta skall ske automatiskt.

CompusaMedlem sedan jan. 20023 327 inlägg
#2

Låter som du söker en funktionalitet liknande onDelete Cascade. Vet inte hur detta fungerar med MSSQL men det borde vara samma lika, eller?

Vet ej om denna hjälper?
http://www.mcse.ms/archive94-2004-7-913523.html

Den här verkar dock ta upp det du söker?

CREATE TRIGGER "[[Tbl A DTrig]" ON [Tbl A] FOR DELETE AS
SET NOCOUNT ON
/* * CASCADE DELETES TO '[Tbl B]' */
DELETE [Tbl B] FROM deleted, [Tbl B] WHERE deleted.[col A] = [Tbl B].[col B]

http://www.dba-sql-server.com/sql_server_tips/t_super_sql_425_cascade_delete.htm

NickemannenMedlem sedan aug. 20003 575 inlägg
#3

Med hjälp av ett nytt ord "Cascading" så hittade jag en property som man kunde välja på relationen, vilket löste problemet :).

LarsGMedlem sedan dec. 200012 464 inlägg
#4

I detta fall behövs ingen trigger. Det räcker med att ange on delete cascade i definitionen av foreign key.

NickemannenMedlem sedan aug. 20003 575 inlägg
#5

Japp, precis det jag hittade.

CompusaMedlem sedan jan. 20023 327 inlägg
#6

Compusa skrev:

Låter som du söker en funktionalitet liknande onDelete Cascade.

Det var väl det jag sa?

NickemannenMedlem sedan aug. 20003 575 inlägg
#7

Compusa skrev:

Det var väl det jag sa?

Ja det stämmer bra, det ledde mig att kolla efter cascading, vilket jag senare hittade i programmet, så det du sa var en vägledning till lösningen :).

CompusaMedlem sedan jan. 20023 327 inlägg
#8

ok :)

133 ms totalt · 3 externa anrop · v20260731065814-full.3ab8d573
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)