我有一个组合框和一个文本框。 @value 我使用@criteria和texbox值的组合框值,但是当我执行此操作时没有显示数据。 我已经在分析问题中:存储过程其中参数SqlDbType
select * from Table where @criteria like '%'[email protected]+'%'
从我测试,数据显示了,如果我的价值是@criteria字符串的一部分。因此,如果@criteria是'Name',那么只有@value是'n'或'a'或'm'或'e'时才会显示数据。我如何才能使其工作?
OpenConn()
Cmd.CommandType = CommandType.StoredProcedure
Cmd.CommandText = "Find"
Cmd.Parameters.Clear()
Cmd.Parameters.Add("@Criteria", SqlDbType.varchar).Value = CmbCriteria.Text
Cmd.Parameters.Add("@Value", SqlDbType.VarChar).Value = TxtValue.Text
Dr = Cmd.ExecuteReader
ListView1.Items.Clear()
Do While Dr.Read
Dim lv As ListViewItem
lv = ListView1.Items.Add(Dr("No"))
lv.SubItems.Add(Dr("Name"))
lv.SubItems.Add(Dr("Address"))
Loop
CloseConn()
根据您的需要使用'CmbCriteria.SelectedItem.Text'或'CmbCriteria.SelectedItem.Value'。还有'SqlDbType.varchar'是一个错字?因为你有'SqlDbType.Varchar'作为Value参数,而不是Criteria。 – Nilesh
@Nilesh我在那里稍微改变一下代码,不知道为什么它看起来像一个错字,但我向你保证,情况并非如此。关于'cmbkriteria.selecteditem.text'或'cmbcriteria.selecteditem.value',它会返回类型'String'中未找到的'Public member'文本'/'值'。 – Hendry
确保你在模块的开头有'Option Explicit'。 – RBarryYoung