连接数据库问题

zydream6 2008-09-17 08:58:26
我用VB.NET编写以下代码,主要功能是得到数据库里某一表中的字段值,编译总是提示没有provider关键字,不知道是什么问题引起的
Dim ConnectionString As String
Dim SqlStr As String
ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=f:\test1.mdb"

Dim com As New SqlClient.SqlConnection(ConnectionString)


Dim ds As New System.Data.DataSet
Dim DA As New System.Data.SqlClient.SqlDataAdapter
Dim CMD As System.Data.SqlClient.SqlCommand

SqlStr = "select * from comSaveTable"
CMD = New System.Data.SqlClient.SqlCommand(SqlStr, com)
DA.SelectCommand = CMD
DA.Fill(ds)
MsgBox(ds.Tables("comSaveTable").Rows(0)("com_Name"))
...全文
90 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
LYDF4151 2008-09-19
  • 打赏
  • 举报
回复
呵呵,张冠李戴,五楼正解。
程序员Linc 2008-09-19
  • 打赏
  • 举报
回复
5楼的不错啊!!!
zyclove2008 2008-09-18
  • 打赏
  • 举报
回复
这里有个例子,你自己看看:
Dim myconnection As New SqlClient.SqlConnection("data source=edp01;initial catalog=sky;user id=sa;")
Dim myapter As New SqlClient.SqlDataAdapter
Dim mycommand As New SqlClient.SqlCommand("exec rz '" & DateTimePicker1.Value & "'", myconnection) '上面"exec rz"是执行存储过程,后面的 '" & DateTimePicker1.Value & "' 是参数
myapter.SelectCommand = mycommand
Dim myset As New DataSet
myapter.Fill(myset, "table")

IWAWWFY 2008-09-18
  • 打赏
  • 举报
回复
楼上正解,顺便学习。
JeffChung 2008-09-18
  • 打赏
  • 举报
回复
5楼正解。access数据库请用oledb开头的
ejoe313 2008-09-18
  • 打赏
  • 举报
回复
你的问题是:你的数据库是Access,而你用的却是Sql的Connection、SqlCommand ……
要引用 Imports System.Data.OleDb


Dim connString As String
connString = "Provider=Microsoft.JET.OLEDB.4.0;data source=C:\Northwind.mdb"
Dim sqlString As String
sqlString = "SELECT * FROM customers"
Dim dataAdapter As OleDbDataAdapter
dataAdapter = Nothing
Dim _dataSet As DataSet
_dataSet = Nothing
Try

Dim connection As OleDbConnection
connection = New OleDbConnection(connString)
dataAdapter = New OleDbDataAdapter(sqlString, connection)
_dataSet = New DataSet()
dataAdapter.Fill(_dataSet, "customers")
connection.Close()
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Exclamation, "系统提示")
End Try
polarmirror 2008-09-18
  • 打赏
  • 举报
回复
声明com后,要com.ConnectionString ="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=f:\test1.mdb"
再com.open
zydream6 2008-09-17
  • 打赏
  • 举报
回复
自己顶一下
zydream6 2008-09-17
  • 打赏
  • 举报
回复
我加了,还是同样的提示,不支持关键字"provider"
Dim ConnectionString As String

Dim SqlStr As String

ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=f:\test1.mdb"

Dim com As New SqlClient.SqlConnection(ConnectionString)
com.Open()


Dim ds As New System.Data.DataSet
Dim DA As New System.Data.SqlClient.SqlDataAdapter
Dim CMD As System.Data.SqlClient.SqlCommand

SqlStr = "select * from comSaveTable"
CMD = New System.Data.SqlClient.SqlCommand(SqlStr, com)
DA.SelectCommand = CMD
DA.Fill(ds)
MsgBox(ds.Tables("comSaveTable").Rows(0)("com_Name"))
hnwl0507 2008-09-17
  • 打赏
  • 举报
回复
你的连接都还没有打开,在Dim com As New SqlClient.SqlConnection(ConnectionString)后加句com.open

16,717

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧