Eseguire una stored procedure senza conoscere i nomi dei parametri.

martedì 19 giugno 2007 - 14.04

mattecapelli Profilo | Newbie

Ciao a tutti

Supponendo che i parametri che devo passare siano tutti stringhe e quindi io sia slegato dal tipo di dato, è possibile eseguire una stored procedure passando un numero indefinito di parametri di cui non conosco il nome? Passandoli per esempio con il giusto ordine...

Grazie in anticipo!

Matteo

alx_81 Profilo | Guru

>Ciao a tutti
Ciao!
>
>Supponendo che i parametri che devo passare siano tutti stringhe
>e quindi io sia slegato dal tipo di dato, è possibile eseguire
>una stored procedure passando un numero indefinito di parametri
>di cui non conosco il nome? Passandoli per esempio con il giusto
>ordine...
Che DBMS utilizzi?
qual è di preciso il tuo problema?
cosa vuoi ottenere?

Rispondi a queste domande e proviamo ad aiutarti meglio
Alx81 =)

http://blogs.dotnethell.it/suxstellino

mattecapelli Profilo | Newbie

ciao
Scusa la carenza di informazioni...in effetti era un po ambigua la domanda
Il DBMS è SQLServer 2000

In Visual Basic 2005 eseguendo una stored procedure tramite un oggetto SqlCommand 'cmd', all'inserimento dei parmetri, viene richiesto il nome del parametro e il valore nella seguente forma

cmd.Parameters.AddWithValue("@NomeParametro", Valore)

è possibile passare un range di parametri senza conoscere precisamente il nome che hanno all'interno della stored procedure?

Il problema da un punto di vista funzionale è il seguente: Un superutente deve poter eseguire una stored procedure da lui creata e di cui io non conosco la struttura.

Esempio:
NomeStoredProcedure parametro1,parametro2,...,parametroN

alx_81 Profilo | Guru

>Il problema da un punto di vista funzionale è il seguente: Un
>superutente deve poter eseguire una stored procedure da lui creata
>e di cui io non conosco la struttura.
Ok, se non ricordo male puoi usare il CommandBuilder che ti ritorna le informazioni sul comando da eseguire (i parametri con il metodo DeriveParameters se non erro), in modo da poterti generare un elenco di textbox da far compilare all'utente.. Quindi ti basta popolare una combo con tutte le stored procedure (o una text box per inserire il nome della sp) ed una volta selezionata una, restituisci l'elenco dei params con i tipi e i validatori..
Un semplice pulsante eseguirà il comando che vai a creare..

Leggi questo link
http://msdn2.microsoft.com/en-us/library/system.data.sqlclient.sqlcommandbuilder.aspx

ciao!


Alx81 =)

http://blogs.dotnethell.it/suxstellino
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