我有以下使用OleDbDataReader读取数据的代码。
有趣的是,虽然我转换为字符串,但我只能返回数字。
Dim cn As New OleDbConnection
Dim fileloc = Server.MapPath("~/test/")
cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + fileloc + ";Extended Properties='text;HDR=Yes;FMT=Delimited'"
cn.Open()
Dim cmd As New OleDbCommand
cmd.Connection = cn
cmd.CommandText = "SELECT * FROM feed.csv"
Dim reader As OleDbDataReader = cmd.ExecuteReader()
While reader.Read()
Response.Write(reader("Stock Number").ToString)
End While
reader.Close()
cn.Close()
所以我用测试打开了csv文件并查看了数据。
当“Stock Number”有字符串时,它不会返回数据。
IM-95-189-012 ---->返回空白
2241 ----->返回2241
2241B ----->返回空白
这是我第一次使用OleDbDataReader。
知道发生了什么事吗?
答案 0 :(得分:1)
如果您总是尝试获取字符串值,请使用GetString。如果您需要更多信息,请查看knowledge base
Response.Write(reader.GetString("Stock Number"))
This对此有直接影响。答案是针对C#,但应该可以转换为VB。