So übergeben Sie einen Spaltennamenwert als SQL-Argument mit Platzhaltern
Wie übergebe ich einen Spaltennamenwert als SQL-Argument mit Parameterplatzhaltern?
Das Ziel ist, dass dies funktioniert:
var sql = "SELECT * FROM Condos WHERE @0 LIKE @1";
var sqlData = db.Query(sql,choice,"%"+searchString+"%");
choice
ist eine Variable, die diecolumn name
@0
ist eincolumn name
(und es gelingt mir nicht, es als Argument zu übergeben)
@1
ist einsearch string
(und ich habe kein problem damit)
Ich habe viele Dinge gelesen und ausprobiert:
Unten wirft man keinen Fehler, bringt aber keine Daten
var sql = "SELECT * FROM Condos WHERE @0 LIKE @1";
var sqlData = db.Query(sql,choice,"%"+searchString+"%");
Unten wirft manColumn name not valid = '@0'
var sql = "SELECT * FROM Condos WHERE [@0] LIKE @1"
var sqlData = db.Query(sql,choice,"%"+searchString+"%");
Unten wirft manColumn name not valid = 'choice'
var sql "SELECT * FROM Condos WHERE choice LIKE @0");
var sqlData = db.Query(sql,"%"+searchString+"%");
Unten wirft manMust declare scalar variable "@choice"
var sql "SELECT * FROM Condos WHERE @choice LIKE @0");
var sqlData = db.Query(sql,"%"+searchString+"%");
Unten wirft man keinen Fehler, bringt aber keine Daten
var sql = "SELECT * FROM Condos WHERE '@choice' LIKE @0";
var sqlData = db.Query(sql,"%"+searchString+"%");
Unten wirft man keinen Fehler, bringt aber keine Daten
var sql = "SELECT * FROM Condos WHERE '@choice' LIKE @0";
var sqlData = db.Query(sql,"%"+searchString+"%");
Unten wirft man keinen Fehler, bringt aber keine Daten
var sql = "SELECT * FROM Condos WHERE '"+choice+"' LIKE @0";
var sqlData = db.Query(sql,"%"+searchString+"%");
Unter einem: GROSSER ABSTURZ
var sql = "SELECT * FROM Condos WHERE '"+@choice+"' LIKE @0";
var sqlData = db.Query(sql,"%"+searchString+"%");
Unten wirft manColumn name not valid = 'NameShort'
Dies ist genau der richtige Spaltenname
var sql = "SELECT * FROM Condos WHERE ['"+choice+"'] LIKE @0";
var sqlData = db.Query(sql,"%"+searchString+"%");
Unter einem: GROSSER ABSTURZ
var sql = "SELECT * FROM Condos WHERE ['"+@choice+"'] LIKE @0";
var sqlData = db.Query(sql,"%"+searchString+"%");
HILFE !!!!!!!!!!!!!!