---
title: "Stored Procedures"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/10904-stored-procedures"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "jonne"
published: "2001-08-03T08:23:00.000Z"
updated: "2001-08-03T09:39:00.000Z"
replies: 5
views: 327
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/asp/10904-stored-procedures"
---

# Stored Procedures

## #1 — jonne, 2001-08-03T08:23Z

Liten fråga. Har ett par lagrade procedurer för exv inert. Hur använder jag dessa i asp ?
Har testat att göra på detta sättet:

```
strName = Request.Form("ffName")
	strPhone = Request.Form("ffPhone")
	paramstring = paramstring &"'"&strName&"','"&strPhone&"'"
	objCN.execute ("exec dbo.insert_tblUsers_1 " & paramstring)
```

och det verkar ju fungera, men är det såhär man ska göra eller finns det något smidigare/annorlunda sätt?

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

## #2 — LarsG, 2001-08-03T08:57Z

Ja, om du inte har några utparametrar så är det enklaste sättet. Tycker att det ser smidigt ut.

Om proceduren har utparametrar så får man använda ett kommandoobjekt

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

## #3 — Boma, 2001-08-03T09:01Z

Det finns en bra artikel om procedurer och ASP på:
 <http://www.aspfaq.com/faq/sp.asp>

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

## #4 — jonne, 2001-08-03T09:12Z

LarsG\>\> Lust att utveckla "utparametrar" ? :)

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

## #5 — LarsG, 2001-08-03T09:38Z

Tja, om man använder SQL servers procedurer så behöver man knappast utparametrar. Det är enklare att returnera värdena som ett resultatset i stället

```
create procedure x (@x int output,@y int output) as
...
set @x = 47
...
set @x = 11
```

då är det likvärdigt att skriva

```
create procedure x  as
declare @x int
declare @y int
...
set @x = 47
...
set @x = 11

select @x,@y
```

vilket är enklare att hantera i VB-script då man får upp det som ett vanligt recordset

Om man nu har utparametrar så måste man skapa parameterobjekt och lagra i kommandoobjektet

```

Set ogr = server.createobject("adodb.command")
ogr.CommandText = "nisse"
ogr.CommandType = adCmdStoredProc
   
aleb = request.form("aleb")
Set parIn = ogr.CreateParameter("percentage", adInteger, adParamInput)

ogr.Parameters.Append parIn
parIn.Value = aleb

Set parIn = ogr.CreateParameter("percentage", adInteger, adParamOutput)
ogr.Parameters.Append parOut

ogr.execute 

response.write parOut.value
```

Ungefär så, som synes så blir det bra mycket mer kod med parameterhanteringen. Det kan vara en fördel att använda kommandoobjektet om man skall anropa en procedur flera gånger fast med olika värden och då är det bara att sätta value för parametern och anropa execute. (Det blir då ingen omkompilering av execute satsen, vilket det skulle bli om man byggde den dynamiskt för varje anrop.)

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

## #6 — jonne, 2001-08-03T09:39Z

Tackar och bockar.

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/10904-stored-procedures
