【发布时间】:2017-12-13 07:15:42
【问题描述】:
在c#中使用oledb命令函数进行sql查询时,连接变量的正确方法是什么。为了应用一些上下文,我试图使列表框显示的内容依赖于在前一个列表框上所做的另一个选择。这是我尝试过但不起作用的方法。
OleDbCommand projects = new OleDbCommand("SELECT * FROM Client_projects
WHERE clients = " + (listBox1.SelectedItem.ToString()) , conn);
OleDbDataReader project = projects.ExecuteReader();
while (project.Read())
{
// Add items from the query into the listbox
listBox2.Items.Add(project[1].ToString());
}
【问题讨论】:
-
正确的方法是传入一个带值的参数。
-
客户是 varchar 吗?然后使用
WHERE clients =' "+ (listBox1.SelectedItem.ToString()) + "'" -
@SurajS 我尝试了你的代码,但它仍然失败,此时我使用的虚拟值是 'Client 1' 、 'Client 2' 等,你所说的 varchar 是什么意思
-
@GordonLinoff 你如何作为参数传入你有任何示例代码
-
@JamesPiper 你有什么例外?
project[1]不应该是project[0]?
标签: c# sql concatenation oledb