请教vb.net高手一个关于executereader的问题
我上学的时候学了一下sql和vb.net,想研究下能不能把普及度更高的Excel代替sqlserver试了一下竟然可以,但是却遇到了一个关于executereader问题...
我上学的时候学了一下sql 和vb.net,想研究下能不能把普及度更高的Excel代替sql server试了一下竟然可以,但是却遇到了一个关于executereader问题,在此请教下各位高手前辈
Dim discom As String = "SELECT DISTINCE C FROM [Sheet1$]"
Dim mydatareader As OleDbDataReader = disCommand.
Dim l As Integer
For l = 0 To mydatareader.FieldCount - 1
na(l) = mydatareader.Item(l)
ComboBox1.Items.Add(na(l))
Next
连接后我比照sql写了这段代码,意思是将Excel C 列的内容去除重复,添加到combobox中去。但是disCommand.没有executereader,然后就不会了,请教各位高手前辈这应该怎么办 展开
Dim discom As String = "SELECT DISTINCE C FROM [Sheet1$]"
Dim mydatareader As OleDbDataReader = disCommand.
Dim l As Integer
For l = 0 To mydatareader.FieldCount - 1
na(l) = mydatareader.Item(l)
ComboBox1.Items.Add(na(l))
Next
连接后我比照sql写了这段代码,意思是将Excel C 列的内容去除重复,添加到combobox中去。但是disCommand.没有executereader,然后就不会了,请教各位高手前辈这应该怎么办 展开
2个回答
展开全部
有的,还不止一个:ExecuteDbDataReader,ExecuteReader
http://msdn.microsoft.com/zh-cn/library/vstudio/system.data.oledb.oledbcommand(v=vs.100).aspx
另外,最可靠的办法是用adapter.fill到datatable,然后从内存中获取到list,
用linq查内存就很方便了。
还有,只是查询的话,网上有linq to excel,你可以查查。
http://msdn.microsoft.com/zh-cn/library/vstudio/system.data.oledb.oledbcommand(v=vs.100).aspx
另外,最可靠的办法是用adapter.fill到datatable,然后从内存中获取到list,
用linq查内存就很方便了。
还有,只是查询的话,网上有linq to excel,你可以查查。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Dim sA As String
'xlsxfilename 是excel的文件名,包含路径信息,例如 c:\test.xlsx
sA = "provider=Microsoft.Jet.OLEDB.4.0; data source=" & xlsxfilename & ";Extended Properties='Excel 8.0;IMEX=1;'"
Dim oConExcel As System.Data.OleDb.OleDbConnection = New System.Data.OleDb.OleDbConnection(sA)
Dim oCmd As System.Data.OleDb.OleDbCommand = New System.Data.OleDb.OleDbCommand("select * from [Sheet1$]")
oCmd.Connection = oConExcel
oConExcel.Open()
Dim oRD As System.Data.OleDb.OleDbDataReader = oCmd.ExecuteReader()
If oRD.HasRows Then
Do While oRD.Read() '一次读取一行,下面取出第一列
ComboBox1.Items.Add( oRD.Item(1).ToString)
Loop
End If
'xlsxfilename 是excel的文件名,包含路径信息,例如 c:\test.xlsx
sA = "provider=Microsoft.Jet.OLEDB.4.0; data source=" & xlsxfilename & ";Extended Properties='Excel 8.0;IMEX=1;'"
Dim oConExcel As System.Data.OleDb.OleDbConnection = New System.Data.OleDb.OleDbConnection(sA)
Dim oCmd As System.Data.OleDb.OleDbCommand = New System.Data.OleDb.OleDbCommand("select * from [Sheet1$]")
oCmd.Connection = oConExcel
oConExcel.Open()
Dim oRD As System.Data.OleDb.OleDbDataReader = oCmd.ExecuteReader()
If oRD.HasRows Then
Do While oRD.Read() '一次读取一行,下面取出第一列
ComboBox1.Items.Add( oRD.Item(1).ToString)
Loop
End If
追问
不行啊,还是找不到ExecuteReader()能帮忙直接帮我改一下源文件吗
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询