webForumDet fria alternativet

Ms Sql Server

Databaser & SQLur Databashanterare & SQL

7 svar · 375 visningar · startad av Nickemannen

Medlem sedan aug. 20003 575 inlägg
Frågan#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.

Medlem 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

Medlem 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 :).

Medlem 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.

Medlem sedan aug. 20003 575 inlägg
#5

Japp, precis det jag hittade.

Medlem 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?

Medlem 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 :).

Medlem sedan jan. 20023 327 inlägg
#8

ok :)

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