2017-06-29 49 views
-3

我想连接一个数据库,但是崩溃并且说有一个 连接问题,我在其他pc上试过这段代码,但是现在不工作 错误是:用visual basic连接数据库

There was a network or instance-specific error while trying to establish a connection to SQL Server. The server was not found or is not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. 

的代码是这样的:

Module Module1 
'FUNZIONE PER LA CONNESSIONE AL DATABASE 
Public Function Connetti(ByVal sql As String, ByVal namedset As String, ByRef dataSet As DataSet) 
    Dim myConnString As String = "Persist Security Info=False;database=test;server=95.134.229.235;user id=web;pwd=fiautoppzione" 'server=Server206 'user id=utente_std;pwd=145111 
    Dim myConnection As New SqlConnection(myConnString) 
    Dim myInsertQuery As String = sql 
    Dim myCommand As New SqlCommand(myInsertQuery) 
    Dim myada As New SqlDataAdapter 
    Dim mydset As New DataSet(namedset) 
    Dim mydbs As New BindingSource 

    'IO.File.AppendAllText("C:\aggiorna.txt", sql & vbCrLf) 
    myCommand.Connection = myConnection 
    myada.SelectCommand = myCommand 
    myada.MissingSchemaAction = MissingSchemaAction.AddWithKey 
    mydset.EnforceConstraints = False 
    mydset.Clear() 
    myada.Fill(mydset, namedset) 
    mydbs.DataSource = mydset.Tables(namedset) 

    If Mid(sql, 1, 6) = "update" Then 
     mydset.Clear() 
     myada.Fill(mydset, namedset) 
     mydbs.DataSource = mydset.Tables(namedset) 
    End If 
    myConnection.Open() 
    dataSet = mydset 
    myCommand.Connection.Close() 
    Return mydbs 
End Function 

和代码的第一部分:

Option Explicit On 
Imports System.Data 
Imports System.Data.Odbc 
Imports System.Xml.Xsl 
Imports System.ComponentModel 
Imports System.Threading 
Imports System.IO.Ports 
Imports FIAppStabilimento.MySql.Data 
Imports System.Data.SqlClient 

Namespace MySql.Data.MySqlClient 
End Namespace 
+0

是在给定IP上打开连接的端口? – Mederic

+0

我不知道,请帮我 –

+0

基本网络。当你在你的情况下建立一个IP连接时:例如,如果你使用SQL Server连接到'95.134.229.235:1433',那么通过端口连接'server = 95.134.229.235',但该端口需要打开。它说它不能建立到你的数据库的连接,所以你的端口可能无法访问。 – Mederic

回答

0

对于mySQL连接,您不能使用sqldataconnection。

首先下载MySQL连接/净 然后添加下列引用: MySQL.Data

有时候MySQL的不知何故没有.NET选项卡下。转到浏览选项卡,然后导航到以下路径:

C:\ Program Files(x86)\ MySQL \ MySQL Connector Net 6.6.4 \ Assemblies \ v2.0 或C:\ Program Files(x86)\ MySQL的\ MySQL连接网络6.6.4 \组件\ V4.0 并添加MySql.Data.dll 添加以下代码公共类Form1中前 MYSQL.dll Reference Image

Imports MySql.Data.MySqlClient 

然后添加下面的公共类Form1中

以下声明
Dim conn As New MySqlConnection 

Public Sub connect() 
    Dim DatabaseName As String = "test" 
    Dim server As String = "95.134.229.235" 
    Dim userName As String = "web" 
    Dim password As String = "fiautoppzione" 
    If Not conn Is Nothing Then conn.Close() 
    conn.ConnectionString = String.Format("server={0}; user id={1}; password={2}; database={3}; pooling=false", server, userName, password, DatabaseName) 
    Try 
     conn.Open() 

     MsgBox("Connected") 
    Catch ex As Exception 
     MsgBox(ex.Message) 
    End Try 
    conn.Close() 
End Sub