---
title: "Trigger i MSQL (Before delete)"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/79283-trigger-i-msql-before-delete"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "SteveP"
published: "2003-06-09T20:17:12.000Z"
updated: "2003-06-09T21:52:02.000Z"
replies: 6
views: 333
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/databaser-sql/79283-trigger-i-msql-before-delete"
---

# Trigger i MSQL (Before delete)

## #1 — SteveP, 2003-06-09T20:17Z

Denna triggern använder jag i en Oracle db.

```
create trigger kundtrigger
on kunder before delete
referencing old as oldRow
as
begin
  delete from telnr where kundid = : oldRow.id;
end kundtrigger;
```

Kan jag köra before delete i mssql? Får inte riktigt till den.

När jag deleterar nåt från tblMAIN så vill jag att alla poster i tblSUB som är relaterade till tblMAIN ska tas bort.

Relationen görs genom ett värde som finns i tblMAIN.MainCat och detta värde ligger i tblSUB.SubCat

Permalänk: https://www.webforum.nu/p/79283

## #2 — SteveP, 2003-06-09T20:34Z

Nuså!

```
CREATE TRIGGER TR_DollsPics ON tblMAIN FOR DELETE
AS
BEGIN
SET NOCOUNT ON

DELETE FROM tblSUB WHERE tblSUB.SubCat in(SELECT MainCat FROM deleted)
END
```

Permalänk: https://www.webforum.nu/p/1079890

## #3 — SteveP, 2003-06-09T20:48Z

Kan nån förklara vad SET NOCOUNT ON gör?

Permalänk: https://www.webforum.nu/p/1079901

## #4 — @nders, 2003-06-09T20:49Z

SET NOCOUNT ON stänger av rowcount för varje fråga som exekveras. Det kanske skulle vara mer logiskt om man skrev SET COUNT OFF eller så. :)

Nu vet jag inte vad det skulle spela för roll i en trigger, och i det här fallet *känns* den onödig, eftersom du bara exekverar ett SQL-statement i din trigger.

Men vad vet jag! :)

Permalänk: https://www.webforum.nu/p/1079902

## #5 — SteveP, 2003-06-09T20:54Z

Ok så man kan använda det till att se hur många Rows som blev affected av triggern? och isf hur får man ut denna rowcount om man har NOCOUNT OFF?
E det som i SP's?
typ SELECT @total_rows = @@ROWCOUNT

Permalänk: https://www.webforum.nu/p/1079905

## #6 — LarsG, 2003-06-09T21:29Z

Set NOCOUNT OFF påverkar inte @@rowcount. Det innebär bara att SQL server inte skickar information om antalet poster som påverkats till klienten.

Permalänk: https://www.webforum.nu/p/1079917

## #7 — SteveP, 2003-06-09T21:52Z

Jaha såpas. E det nån performance förbättring att ha NOCOUNT ON om man har flera statements som inte returnerar nån större data? Syftar i synnerhet på SP's

Permalänk: https://www.webforum.nu/p/1079935

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/79283-trigger-i-msql-before-delete
