Sql server 2008 express parametri opzionali

mercoledì 28 aprile 2010 - 11.57

joeyabuki Profilo | Newbie

BuongiorNo mi sono appena iscritto,sto creando una storeprocedure dove dovrei fare una ricerca su più tabelle,utilizzo 6 parametri..che non dovranno per forza essere usati tutti!questo lo deciderà l'utente per affinare meglio la ricerca!io ho creato la seguente storeprocedure..ma non ottengo risultati nemmeno compilandoli tutti,ora volevo sapere se questo che sto cercando du usare è la strada migliore o se posso passare per un altra.
Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra

carloalberto Profilo | Junior Member

senza entrare nel dettaglio della stored mi sembra che manchi exec(@SqlQuery)
cioè dopo che hai compilato query secondo le condizioni devi eseguire la query contenuta nella stringa usando il comado exec

joeyabuki Profilo | Newbie

mi spiego meglio io dal visualstudio 2008 creo la storeprocedure..,poi la modifico e poi click col destro e premo esegui,compare la finestra con i parametri da compilare,c'è cmq bisogno di exec(@SqlQuery)?

lbenaglia Profilo | Guru

>mi spiego meglio io dal visualstudio 2008 creo la storeprocedure..
Attenzione che una simile query ti apre le porte ad attacchi di SQL Injection.
Un consiglio? Scrivi n strored procedure SENZA l'utilizzo di SQL dinamico.

Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org

joeyabuki Profilo | Newbie

è un applicazione client-server..,dunque dovrei usare una cosa where like case when?

carloalberto Profilo | Junior Member

se nella store usi qualcosa del genere variabile = ' select .....'
per poi eseguire la select devi usare exec (variabile)

joeyabuki Profilo | Newbie

ogni qualvolta richiamno quella variabile?

carloalberto Profilo | Junior Member

>ogni qualvolta richiamno quella variabile?
per capirci
dentro la stored puoi scrivere direttamente la select oppure come hai fatto mettendola in una variabile e costruirla (con l'avvertenza di lorenzo ;-)
nel secondo caso , mssql non la esegue la select , per farlo , al momento opportuno nel flusso della store devi lanciare il comando exec(variabile)...
ciao

joeyabuki Profilo | Newbie

io ho riprovato cosi,ma non mi restituisce righe ugualmente...,
Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra
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