hoe kan ik middels een stored procedure een waarde retourneren? Nu heb ik dit als storedprocedure:
Ik roep de storedprocedure op de volgende manier aan in een ASP-pagina:
openDb en closeDb zijn zelfgeschreven subroutines die de databaseconnectie opzetten en weer afsluiten.
Wanneer ik de ASP-pagina uitvoer blijkt mijn sType variabele leeg, de recordset heeft wel de juiste waarden gekregen.
edit: Het gaat om SQL2000 server.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
| CREATE PROCEDURE cv.sp_get_subtypes
(
@typeid int,
@typename varchar(30) OUTPUT
)
AS
SELECT @typename = [Name]
FROM refType
WHERE ID = @typeid
SELECT * FROM refSubType
WHERE [TypeID] = @typeid
GO |
Ik roep de storedprocedure op de volgende manier aan in een ASP-pagina:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
| Call openDb
oCm.CommandText = "cv.sp_get_subtypes"
oCm.CommandType = adCmdStoredProc
oCm.Parameters.Append oCm.CreateParameter("@typeid", adInteger, adParamInput, Len(Request.Form("typeid")), Request.Form("typeid"))
oCm.Parameters.Append oCm.CreateParameter("@typename", adVarChar, adParamOutput, 30)
oRs.Open oCm.Execute
sType = oCm.Parameters("@typename")
Response.Write "You've selected <b>" & sType & "</b> as a global field of expertise.<br/><br/>" & vbCRLF
Response.Write "<form name=""create_2"" method=""post"" action=""" & Request.ServerVariables("SCRIPT_NAME") & "?m=create_cv&i=2"" onsubmit=""return validateCreate_2(this);"">" & vbCRLF
Response.Write "<input type=""hidden"" name=""employeeid"" value=""" & Request.Form("employeeid") & """/>" & vbCRLF
Response.Write "<table>" & vbCRLF
Response.Write "<tr>" & vbCRLF
Response.Write "<td class=""formexplanation"">Global field of expertise: </td>" & vbCRLF
Response.Write "<td><select name=""subtypeid"" size=""1"" class=""listbox""><option value="""">Please select an area for type " & sType & "</option>"
If Not oRs.EOF Then
Do Until oRs.EOF
Response.Write "<option value=""" & oRs("ID") & """>" & Trim(oRs("Name")) & "</option>" & vbCRLF
oRs.MoveNext
Loop
End If
Call closeDb |
openDb en closeDb zijn zelfgeschreven subroutines die de databaseconnectie opzetten en weer afsluiten.
Wanneer ik de ASP-pagina uitvoer blijkt mijn sType variabele leeg, de recordset heeft wel de juiste waarden gekregen.
edit: Het gaat om SQL2000 server.