【发布时间】:2021-06-16 17:10:52
【问题描述】:
我有一个应用程序,我希望能够使用多个用户输入来搜索数据库,我有转账类型、2 个数字之间的转账金额和日期选择器输入,我已经设置了它,所以我可以基于搜索如果传输类型很好,那么使用 2 个或所有 3 个输入进行搜索是否有一种快速的设置方法,或者只是有大量 if 语句来检测已选择的输入?
private void searches()
{
if (cb_Transfer_Type.SelectedIndex < 5)
{
// search using the parameters selected
using (SQLiteCommand cmd = conn.CreateCommand())
{
try
{
cmd.CommandText = @"SELECT * FROM tranx WHERE action = '" + cb_Transfer_Type.SelectedItem + "' AND accid = '" + Global.selectedAccountID + "';";
da_Transfers = new SQLiteDataAdapter(cmd.CommandText, conn);
dt_Transfers = new DataTable();
da_Transfers.Fill(dt_Transfers);
dgv_Transfers.DataSource = dt_Transfers;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
}
if(cb_Transfer_Type.SelectedIndex == 5)
{
// search using the parameters selected
using (SQLiteCommand cmd = conn.CreateCommand())
{
try
{
cmd.CommandText = @"SELECT * FROM tranx WHERE accid = '" + Global.selectedAccountID + "';";
da_Transfers = new SQLiteDataAdapter(cmd.CommandText, conn);
dt_Transfers = new DataTable();
da_Transfers.Fill(dt_Transfers);
dgv_Transfers.DataSource = dt_Transfers;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
}
}
这就是我根据传输类型进行搜索的代码,只是说 如果选择了转账类型并选择了金额,则执行此操作
如果所有 3 个都被选中,那么要这样做吗?
有没有更快或更整洁的方式来进行这些类型的搜索?
【问题讨论】:
-
我想你可以在这些帖子上找到你的答案:stackoverflow.com/questions/13276602/…
-
好的,谢谢,会通过它看看
-
在你开始使用
AddWithValue之前,我也会阅读this
标签: c# winforms sqlite ado.net