Sql server 2005 restituire 2 parametri da stored procedure

domenica 20 gennaio 2008 - 16.56

Amodio Profilo | Expert

salve a tutti
sto studiando le stored procedure
ho visto che per reperire il valore da .net basta fare :
command.parameters("nomeparametro").value

ma in sql server 2005
come posso restituire piu' parametri ?

grazie

lbenaglia Profilo | Guru

>come posso restituire piu' parametri ?
Restituire 1 parametro o restituirne 100 non cambia niente, devi semplicemente definire una stored procedure con 1 o più parametri di output, dichiararli ed eseguire il tutto via sqlCommand. Una volta eseguita la sp andrai a recuperare i parametri di output interrogando la proprietà Parameters.

>grazie
Prego.
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org

Amodio Profilo | Expert

avendo tale codice in .net:

dim cmd as sqlcommand("sp_prova",cn) ccmd.commandtype=storedProcedure dim par as parameter par=cmd.parameters.add(new sqlparameter("@param",varchar) par.direction=output cmd.executenonquery msgbox (cmd.parameters("@prova").value

e in sql server questo codice:
create procedure sp_prova @sp_prova varchar use prova set @prova="ciao" go
vorrei visualizzare il valore di @prova
eppure mida errore che sp_prova non ha nessun parametro

lbenaglia Profilo | Guru

>vorrei visualizzare il valore di @prova
>eppure mida errore che sp_prova non ha nessun parametro

Osserva questo codice T-SQL:

USE tempdb; GO CREATE TABLE dbo.Students( StudentID int NOT NULL IDENTITY PRIMARY KEY, FirstName varchar(10) NOT NULL, LastName varchar(10) NOT NULL ); GO CREATE PROCEDURE dbo.up_AddStudent( @FirstName varchar(10), @LastName varchar(10), @NewID int OUTPUT ) AS INSERT dbo.Students VALUES(@FirstName, @LastName); SET @NewID = SCOPE_IDENTITY(); GO SELECT * FROM dbo.Students

Voglio richiamare la stored procedure dbo.up_AddStudent ottenendo in output l'ID generato dal comando di INSERT.
Ti allego un piccolo modulo Visual Basic .NET:

Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra

Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5