【发布时间】:2010-04-09 20:18:14
【问题描述】:
NET 和 VB.net 代码在后面。我有一个经典的 ASP 页面,它使用以下代码连接到 mySQL 服务器:
Set oConnection = Server.CreateObject("ADODB.Connection")
Set oRecordset = Server.CreateObject("ADODB.Recordset")
oConnection.Open "DRIVER={MySQL ODBC 3.51 Driver}; SERVER=example.com; PORT=3306; DATABASE=xxx; USER=xxx; PASSWORD=xxx; OPTION=3;"
sqltemp = "select * from userinfo WHERE emailAddress = '" & theUN & "'"
oRecordset.Open sqltemp, oConnection,3,3
if oRecordset.EOF then
...
但是,我在 ASP.NET (VB.NET) 中找不到任何可以连接到 mySQL 的东西。我只发现这段代码在到达“Dim conn As New OdbcConnection(MyConString)”代码后似乎不起作用:
Dim MyConString As String = "DRIVER={MySQL ODBC 3.51 Driver};" & _
"SERVER=example.com;" & _
"DATABASE=xxx;" & _
"UID=xxx;" & _
"PASSWORD=xxx;" & _
"OPTION=3;"
Dim conn As New OdbcConnection(MyConString)
conn.Open()
Dim MyCommand As New OdbcCommand
MyCommand.Connection = MyConnection
MyCommand.CommandText = "select * from userinfo WHERE emailAddress = '" & theUN & "'""
MyCommand.ExecuteNonQuery()
MyConnection.Close()
我也有这些导入语句:
<%@ Import Namespace=System %>
<%@ Import Namespace=System.IO %>
<%@ Import Namespace=System.Web %>
<%@ Import Namespace=System.ServiceProcess %>
<%@ Import Namespace=Microsoft.Data.Odbc %>
<%@ Import Namespace=MySql.Data.MySqlClient %>
<%@ Import Namespace=MySql.Data %>
<%@ Import Namespace=System.Data %>
错误如下:
编译器错误消息:BC30002:未定义类型“OdbcConnection”。
来源错误:
Line 121: "OPTION=3;"
Line 122:
Line 123: Dim conn As New OdbcConnection(MyConString) '<--error line
Line 124: conn.Open()
Line 125:
所以任何帮助都会很棒! :o)
编辑:使用这种方式可以正常工作
Dim MyConString As String = "DRIVER={MySQL ODBC 3.51 Driver};" & _
"SERVER=example.com;" & _
"DATABASE=xxx;" & _
"UID=xxx;" & _
"PASSWORD=xxx;" & _
"OPTION=3;"
Dim conn As OdbcConnection = New OdbcConnection(MyConString)
conn.Open()
Dim MyCommand As New OdbcCommand
MyCommand.Connection = conn
'MyCommand.CommandText = "INSERT INTO tablename VALUES("val1","val2","val3")"
'MyCommand.ExecuteNonQuery()
conn.Close()
和 mysql.data.DLL 一起玩
Dim MyConString As String = "DRIVER={MySQL ODBC 3.51 Driver};" & _
"SERVER=example.com;" & _
"DATABASE=xxx;" & _
"UID=xxx;" & _
"PASSWORD=xxx;" & _
"OPTION=3;"
Dim conn As New MySqlConnection(MyConString)
conn.Open()
Dim MyCommand As New MySqlCommand
MyCommand.Connection = conn
'MyCommand.CommandText = "INSERT INTO tablename VALUES("val1","val2","val3")"
'MyCommand.ExecuteNonQuery()
conn.Close()
大卫
【问题讨论】:
-
那是一个相当旧的 ODBC 驱动程序:不能使用 5.x 版本吗? dev.mysql.com/downloads/connector/odbc/5.1.html
-
“似乎不起作用”是什么意思?您是否收到错误消息?
-
使用 VB.NET 代码时遇到什么错误(如果有)?
-
我会收到一条错误消息,但它已关闭,我不知道如何打开它...“/”应用程序中的服务器错误。运行时错误描述:服务器上发生应用程序错误。此应用程序的当前自定义错误设置阻止远程查看应用程序错误的详细信息(出于安全原因)。但是,它可以被本地服务器机器上运行的浏览器查看。
-
自关闭以来我不确定该错误:“/”应用程序中的服务器错误。运行时错误描述:服务器上发生应用程序错误。此应用程序的当前自定义错误设置阻止远程查看应用程序错误的详细信息(出于安全原因)。但是,它可以被本地服务器机器上运行的浏览器查看。