我无法从 vb 中的访问数据库中检索。这是我指出问题的代码:
`cmd.CommandText = "SELECT distinct(brought_date) from brought_coffee where crop_year =? order by brought_date"
cmd.Parameters.Add("@ccy", OleDb.OleDbType.Integer).Value = Convert.ToInt32(cyrNote.SelectedItem.Trim)
myData = cmd.ExecuteReader
'MessageBox.Show(cyrNote.SelectedItem.Trim)
While myData.Read()
dte = myData(0)
dtComb.Items.Add(dte)
End While
MessageBox.Show("dt1" & dte)`
在我看来,我在这里遇到的问题似乎是占位符在crop_year =?
哪里?
,占位符Convert.ToInt32(cyrNote.SelectedItem.Trim)
是我从组合框中获得的值,cyrNote
并尝试将其转换为整数,Convert.ToInt32()
以便可以将其与crop_year
定义为的数据库值进行比较数据库中的整数。但是这里的问题是选择返回null。我试图?
用已知值(如“2011”)替换占位符,它返回了一个值。这对我来说意味着我的比较crop_year=Convert.ToInt32(cyrNote.SelectedItem.Trim)
是负面的,但我期待一些积极的东西。我试图用谷歌搜索如何转换为整数,这是我能得到的最好的。有人可以告诉我如何可以很好地完成这种转换,或者换句话说,我的代码可能有什么问题?