mmm direi che puoi fare meglio, cioe puoi usare i SQLPARAMETERS: ovvero, invece di creare la query con il valore ad hoc, metti un segnaposto. questo ti da vantaggi sia di sicurezza, sia di performance. ecco come dovresti riscrivere la query per la select
SqlCommand cmdSelect = conn.CreateCommand();
cmdSelect .CommandText= "SELECT dato FROM tabella WHERE dato = @filtroDato";
cmdSelect .Parameters.AddWithValue("@filtroDato",variabile);
SqlDataAdapter da2 = new SqlDataAdapter(cmdSelect);
come puoi vedere @filtroDato fa da segnaposto, dopo di che gli associ il valore; ma al di fuori della stringa di select. nota anche come l'adapter abbia un costruttore per accettare anche un sqlcommand (necessario se vuoi usare i parametri)
per l'update:
string str_update = "UPDATE tabella SET dato =@nuovoDato";
SqlCommand cmd = new SqlCommand(str_update, conn);
cmd .Parameters.AddWithValue("@nuovoDato",nuovodato);
![]()