---
title: "Store Procedure fel"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/21622-store-procedure-fel"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "erka"
published: "2001-09-25T10:37:00.000Z"
updated: "2001-09-25T11:46:00.000Z"
replies: 4
views: 178
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/21622-store-procedure-fel"
---

# Store Procedure fel

## #1 — erka, 2001-09-25T10:37Z

Jag har spn

```
CREATE PROCEDURE [NewsShow]
@LanguageID varchar(2),
@selectstr varchar(2000),
@NewsDate DateTime
AS

select @selectstr = 'SELECT NewsHeaders.NewsId, NewsHeaders.NewsPublishdate, NewsHeaders.NewsRemovedate, NewsContent.
@selectstr = @selectstr + NewsLanguageid, NewsContent.NewsHeader, NewsContent.NewsContent FROM NewsHeaders 
@selectstr = @selectstr +INNER JOIN NewsContent ON NewsHeaders.NewsId = NewsContent.NewsId 
@selectstr = @selectstr + WHERE NewsPublishdate <= @NewsDate AND NewsRemovedate > @NewsDate  And NewsLanguageId =  @NewsLanguageID 
@selectstr = @selectstr + ORDER BY NewsPublishdate DESC'

EXEC(@selectstr)
GO
```

Ska nu hämta ut det med hjälp av asp och jag vet inte riktigt hur jag ska skriva när jag anropar en sp med ett par variabler (LanguageId, NewsDate)

Jag har LanguageID = Gb och NewsDate = Date

jag har tidigare koden

```
LanguageID = Gb
NewsDate = Date

SET RS = Cn.Execute(SQLStmt)
If Rs.Eof Then
Response.Write""
Rs.Close
Set RS = Nothing
Else
ArrRS = Cn.Execute(SQLStmt).getrows()
Session.LCID = 1053
For y = 0 to ubound(ArrRS,2)
Response.Write ArrRs(0,y)
Next
End If
```

Mycket tacksam för hjälp

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

## #2 — LarsG, 2001-09-25T10:59Z

```
sqlstmt = "execute NewsShow '" & Gb & "'," & "'" & newsDate & "'"

conn.execute sqlstmt,,128
```

@selectstr borde inte vara en parameter utan en lokal variabel

Din procedur kommer inte att fungera då allt bara är en sträng.

Varför skriver du den som en dynamisk fråga?

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

## #3 — erka, 2001-09-25T11:03Z

Jag ska ha 3 sidor med olika språk som ska hämta ut nyheter och jag skickar med värdet i en querystring som kan antigen vara, se, gb eller fr

```
@selectstr borde inte vara en parameter utan en lokal variabel
```

Fixade det tog bort @framför, då stämmer det va.

```
Din procedur kommer inte att fungera då allt bara är en sträng.
```

Hur menar du där och du skrev att jag byggde den dynamiskt, hur ska jag annars skriva den om jag ska ha kunna skicka med languageID:t, tack föresten!

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

## #4 — LarsG, 2001-09-25T11:09Z

Det är bara att skriva in deom direkt i frågan

```
CREATE PROCEDURE NewsShow
@LanguageID varchar(2),
@NewsDate DateTime
AS

SELECT NewsHeaders.NewsId, NewsHeaders.NewsPublishdate, NewsHeaders.NewsRemovedate, 
NewsContent.NewsLanguageid, NewsContent.NewsHeader, NewsContent.NewsContent 
FROM NewsHeaders INNER JOIN NewsContent ON NewsHeaders.NewsId = NewsContent.NewsId 
WHERE NewsPublishdate <= @NewsDate 
AND NewsRemovedate > @NewsDate And NewsLanguageId = @NewsLanguageID 
ORDER BY NewsPublishdate DESC

GO
```

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

## #5 — erka, 2001-09-25T11:46Z

Your the MAN with CAPITAL MAN !

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

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/21622-store-procedure-fel
