SQLite命令构造WHERE子句

时间:2017-11-03 09:33:56

标签: c# sqlite tsql

如何使用Combobox.SelectedValue构造WHERE子句?

conL.Open();
cmdL.Connection = conL;
cmdL.CommandText ="SELECT Id FROM dbAllServers WHERE Server_Names='" + cmb_SQLNames.SelectedValue +"'";
SQLiteDataReader r = cmdL.ExecuteReader();
while(r.Read())
{
    serID = int.Parse(r[0].ToString());
    MessageBox.Show("Current Selected Server ID is:..." + serID.ToString());
}
conL.Close();

1 个答案:

答案 0 :(得分:3)

参数化查询的示例可能会有所帮助:

string query = "SELECT Id FROM dbAllServers WHERE Server_Names=@server_name";

string serverName = cmb_SQLNames.SelectedValue;

using (SQLiteConnection connection = new SQLiteConnection(GetConnectionString()))
{
    connection.Open();
    using (var cmd = new SQLiteCommand(query, connection))
    {
        cmd.Parameters.Add(new SQLiteParameter("@server_name", serverName));
        using (var rdr = cmd.ExecuteReader())
        {
            while (rdr.Read())
            {
                // do your job  here
            }
        }
    }
}