Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Come passare un valore del nome di una colonna come argomento SQL utilizzando i segnaposto

La risposta breve è che non puoi; i parametri sono supportati solo per valori , non per nomi di colonna .

Devi ricorrere all'inserimento diretto del testo come ha detto Richard (sia che ciò avvenga nel codice o tramite l'uso della funzione exec() di SQL Server), oppure utilizzare una sorta di libreria (come LINQ) che ti consenta di costruire query dinamicamente e poi lo converte in una rappresentazione testuale.

Se segui il percorso di inserimento diretto del testo, assicurati di non consentire l'inserimento dell'input diretto dell'utente; fai tu stesso una sorta di traduzione per evitare attacchi SQL injection.