Im tentando di eseguire una query con parametri in SQLite da C#, e il metodo di im utilizzando è lungo le linee di creare un comando statico conÈ possibile parametrizzare i nomi di tabelle e colonne nelle query SQLite?
SQLiteCommand cmd = new SQLiteCommand(
"SELECT [ID]" +
",[email]" +
",[serializedata]" +
",[restrictions]" +
" FROM " + UserTable +
" WHERE @search = @searchparam", SQLConnection);
cmd.Parameters.Add(new SQLiteParameter("@searchparam"));
cmd.Parameters.Add(new SQLiteParameter("@search"));
e chiamando in questo modo:
Command.Parameters["@searchparam"].Value = searchdata;
Command.Parameters["@search"].Value = search;
SQLiteDataAdapter slda = new SQLiteDataAdapter(UserSelectUsernameCommand);
DataSet ds = new DataSet();
slda.Fill(ds);
User[] array = new User[ds.Tables[0].Rows.Count];
int index = 0;
foreach (DataRow row in ds.Tables[0].Rows)
{
array[index] = new User(this, row);
index++;
}
return array;
ma sto ottenendo un errore lungo la linea di "'@ ricerca' non è un nome di colonna corretto" o qualcosa del genere. se uso un nome di colonna costante, e uso solo i dati per i parametri, funziona, ma non voglio creare 10 diversi comandi per quando ho bisogno di cercare per nomi di colonne differenti.
Qual è il problema qui?