Puoi semplicemente farlo
query = "Select * From Table Where Title = " + someone;
Ma questo è un male e ti apre a SQL injection
Dovresti semplicemente usare una query parametrizzata
Qualcosa del genere dovrebbe farti iniziare
using (var cn = new SqlClient.SqlConnection(yourConnectionString))
using (var cmd = new SqlClient.SqlCommand())
{
cn.Open();
cmd.Connection = cn;
cmd.CommandType = CommandType.Text;
cmd.CommandText = "Select * From Table Where Title = @Title";
cmd.Parameters.Add("@Title", someone);
}
Dalla risposta di Jon Skeet poiché la sua era più completa della mia
Consulta i documenti per SqlCommand.Parameters per ulteriori informazioni.
Fondamentalmente non dovresti incorporare i tuoi valori all'interno dell'SQL stesso per vari motivi:
- Non è elegante mescolare codice e dati
- Ti apre agli attacchi di SQL injection a meno che tu non stia molto attento a fuggire
- Devi preoccuparti della formattazione e dei dettagli dell'i18n per cose come numeri, date e orari ecc
- Quando la query rimane la stessa con solo la modifica dei valori, l'ottimizzatore ha meno lavoro da fare:può cercare direttamente la query ottimizzata precedente poiché sarà una corrispondenza perfetta in termini di SQL.