Parametri input STORED PROCEDURE

sabato 22 agosto 2009 - 14.51

devilxx84 Profilo | Newbie

Salve a tutti.

Sono in lavorazione di una console application che interagisca con un database.

Mi sono connesso, e riesco a fare qualche operazione.

Ho creato una query che mi permette di ricevere come risultato i campi di una determinata tabella:

USE Northwind;
GO

SELECT COLUMN_NAME
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_SCHEMA = N'dbo'
AND TABLE_NAME = N'Products';
GO

Vorrei che da tastiera l utente indichi di quale tabella vuole conoscere il nome dei campi.

Ho pensato di creare una stored procedure "NOMECAMPI" che faccia questo

CREATE PROCEDURE NOMECAMPI(@nometabella NCHAR(50))
AS

SELECT COLUMN_NAME
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_SCHEMA = N'dbo'
AND TABLE_NAME = @nometabella;
GO

nel visual studio (usando c#) la chiamo cosi:

SqlCommand conta = new SqlCommand("NOMECAMPI", conn); // dove conn è la connessione aperta
conta.CommandType = CommandType.StoredProcedure;
conta.Parameters.AddWithValue("@nometabella", tabella); // dove tabella è una string presa in input da tastiera

SqlDataReader leggi = conta.ExecuteReader();
while (leggi.Read())
{
// Console.WriteLine("CACIO");
Console.WriteLine(leggi[0]);
}
leggi.Close();

Il compilatore mi dà il seguente errore:
Specificati argomenti per la procedura NOMECAMPI, che non ha parametri.
dove sbaglio?

Grazie mille

alx_81 Profilo | Guru

>Salve a tutti.
Ciao

>Il compilatore mi dà il seguente errore:
>Specificati argomenti per la procedura NOMECAMPI, che non ha parametri.
>dove sbaglio?
Ho provato tutto il tuo codice. E funziona su un mio db di test. Mi viene da pensare che in realtà la stored procedure non sia allineata. Potresti aver fatto una versione senza parametri e poi ti sei dimenticato di riallineare con un ALTER PROCEDURE? Oppure stai puntando ad un database che ha la stessa sp senza parametri?
Sto ipotizzando, perchè il codice è corretto.

>Grazie mille
di nulla!
--

Alessandro Alpi | SQL Server MVP

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org

devilxx84 Profilo | Newbie

HO risolto grazie mille.

molto gentile !!!
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