是否可以使用文本框作为参考进行select
查询。
有些人喜欢:
SELECT modeltype FROM txt_model.text
文本框中的值显示是表的名称。
答案 0 :(得分:1)
你可以按照描述去做,但这是一个坏主意。我建议使用以下代码 - 它是安全的并具有相同的UI:
// add your table names to the list below
List<string> validTables = New List<string>() {"users", "addr", "events" };
if (validTables.IndexOf(txt_model.text.ToLower()) > 0)
{
// use "SELECT modeltype FROM "+txt_model.text to perform work
}
else
{
// error code
}
可能需要动态的validTable列表。在这种情况下,您可以获取结果(以SQL Server为例):
SELELCT TABLE_NAME
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_TYPE = 'BASE TABLE'
并将其放在validTables列表中。
或者您可以将该选择的结果放在下拉列表中。
答案 1 :(得分:0)
构建查询字符串的一种方法:
string sql = string.Format("Select modeltype From {0}", txt_model.Text);
// ...
SqlCommand cmd = new SqlCommand(sql);