---
title: "problem med SP"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/170656-problem-med-sp"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "Vinnaren"
published: "2008-04-09T16:47:26.000Z"
updated: "2008-04-10T08:48:31.000Z"
replies: 10
views: 613
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/170656-problem-med-sp"
---

# problem med SP

## #1 — Vinnaren, 2008-04-09T16:47Z

Har följande:

```
		SET @MobileCount = (SELECT COUNT(PhoneId) FROM Phone WHERE ParentId = @ParentId AND PhoneTypeId = @MobileTypeId)

		/*finns inget mobiltelefonnummer sedan tidigare*/
		if(@MobileCount = 0)
		BEGIN
			if(@MobilePhone != null)
			BEGIN
				SET @ErrMsg = 'Fel inträffade när mobiltelefonnummret skulle sparas'
				INSERT INTO Phone(Phone, PhoneTypeId, ParentId) VALUES(@MobilePhone, @MobileTypeId, @ParentId)
			END
		END
		/*finns mobiltelefonnummer sedan tidigare*/
		ELSE
		BEGIN
			/* om mobilnummer är angivet*/
			if(@MobilePhone != null)
			BEGIN
				SET @ErrMsg = 'Fel inträffade när mobiltelefonnummret skulle uppdateras'
				UPDATE Phone SET Phone = @MobilePhone WHERE ParentId = @ParentId AND PhoneTypeId = @MobileTypeId
			END
			ELSE
			/* om mobilnummer inte är angivet och finns sedan tidigare, ta bort*/
			BEGIN
				DELETE FROM Phone WHERE ParentId = @ParentId AND PhoneTypeId = @MobileTypeId
			END
		END
```

 

Får inget felmeddelande, men kommer inte in något i tabellen. Vad kan det vara för fel?  :q 

ANV: MSSQL 2005

Tacksam för all hjälp  :stud

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

## #2 — Peter S, 2008-04-09T16:57Z

Har du gjort print:s på de variabler du kontrollerar?

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

## #3 — LarsG, 2008-04-09T17:04Z

```
if (@MobilePhone != null)
```

är aldrig sant. Använd

```
if (@MobilePhone is not null)
```

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

## #4 — Vinnaren, 2008-04-09T17:22Z

tack, fungerade kanon   :bire

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

## #5 — Vinnaren, 2008-04-10T07:08Z

nytt problem med en SP  :r 

Har följande:

```
	SELECT (c.LastName + ', ' + c.FirstName) AS Name, c.ChildId, d.Name AS DepartmentName, (isnull(s.LastName, 'Saknas') + ', ' + isnull(s.FirstName, '')) AS StaffName, (isnull(p1.LastName, 'Saknas') + ', ' + isnull(p1.FirstName, '')) AS Parent1Name, (isnull(p2.LastName, 'Saknas') + ', ' + isnull(p2.FirstName, '')) AS Parent2Name
	FROM Child AS c

	INNER JOIN Department AS d
	ON c.DepartmentId = d.DepartmentId

	LEFT OUTER JOIN Staff AS s
	ON c.StaffId = s.StaffId

	LEFT OUTER JOIN ParentToChild AS ptc1
	ON c.ChildId = ptc1.ChildId

	LEFT OUTER JOIN Parent AS p1
	ON ptc1.ParentId = p1.ParentId

	LEFT OUTER JOIN ParentToChild AS ptc2
	ON c.ChildId = ptc2.ChildId AND ptc2.ParentId != p1.ParentId

	LEFT OUTER JOIN Parent AS p2
	ON ptc2.ParentId = p2.ParentId

	WHERE c.DepartmentId = @DepartmentId
	ORDER BY c.LastName ASC, c.FirstName ASC
```

 

När den är isnull så vill jag enbart få ut Saknas, nu får jag ut Saknas,
dvs jag vill ha bort ,
Sätter jag isnull på variablen efter blir den ju aldrig null då ', '

Samt kan man lösa när @DepartmentId = 0 ska alla visas på nott enkelöt sätt eller måste man ha två frågor?

Tacksam för all hjälp

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

## #6 — LarsG, 2008-04-10T07:43Z

```
isnull(s.lastname + ',' + isnull(...),'saknas')
```

```
WHERE c.DepartmentId = @DepartmentId
or @departmentId = 0
```

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

## #7 — Vinnaren, 2008-04-10T07:52Z

tack, får felmeddelandet:
The isnull function requires 2 argument(s).

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

## #8 — LarsG, 2008-04-10T08:09Z

Hur ser din fråga ut?

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

## #9 — Vinnaren, 2008-04-10T08:25Z

Ändrade en till    isnull(s.Firstname+ ',' + isnull(s.LastName),'saknas')

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

## #10 — LarsG, 2008-04-10T08:37Z

```
isnull(s.LastName)
```

skall vara

```
isnull(s.LastName,'')
```

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

## #11 — Vinnaren, 2008-04-10T08:48Z

gött, tack, funkar perfa  :stud

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

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/170656-problem-med-sp
