VB - SQL致命内部连接错误 - 已关闭

时间:2013-10-29 04:30:23

标签: mysql sql vb.net

所以每当我尝试写入数据库时​​,在MySQL上运行该程序会发出错误(致命的内部连接错误)。

这是使用的代码:

    Dim SQLcon As New SqlConnection("Server=127.0.0.1; Database=storedatabase; User Id=root; Password=root;")
Dim cmd As SqlCommand

Try
    SQLcon.Open()
    cmd.Connection = SQLcon
    cmd.CommandText = "INSERT INTO Items (ItemName, ItemPrice, ItemQTY) VALUES ('" & Item & "','" & Price & "','" & Qty & "');"
    SQLcon.Close()
    MsgBox("Added " & Item & " to Database", MsgBoxStyle.Information)
Catch ex As Exception
    MsgBox(ex.Message)
End Try

VB给出了这个错误:

An exception (first chance) of type 'System.InvalidOperationException' occurred in System.Data.dll.

SQL端口更改为1433。

存在包含表格的数据库。

编辑: 将Port = 1433添加到连接字符串后,我收到此错误:

InnerExecption = {"Keyword not supported: 'port'."} 

连接字符串:

Dim SQLcon As New SqlConnection("Server=127.0.0.7; Port=1433; Database=storedatabase; User Id=root; Password=root;")

2 个答案:

答案 0 :(得分:1)

巴哈,我是个白痴。

您正尝试使用MSSQL的客户端库连接到MySQL数据库。您需要使用MySql连接器:

http://dev.mysql.com/doc/refman/5.0/en/connector-net-programming-connecting-connection-string.html

Dim SQLcon As New MySql.Data.MySqlClient.MySqlConnection("Server=127.0.0.1; Port=1433; Database=storedatabase; User Id=root; Password=root;")
Dim cmd As SqlCommand

答案 1 :(得分:0)

尝试使用uid UserIDpwd Password

Dim SQLcon As New MySqlConnection("Server=127.0.0.1; Database=storedatabase; uid=root; pwd=root;")

请参阅link

您需要在班级的全球级别使用导入,例如:

Imports MySql.Data.MySqlClient

我假设您正在使用MySQL connector,因为它不像Sql server那样在dotNet中是原生的。否则Imports MySql.Data.MySqlClient命名空间将无效。