Opret forbindelse til ekstern MySQL-database ved hjælp af VB.Net
For at forbinde vb.net til ekstern MySql-database; Lige meget hvilken VB.Net-version du måske bruger, skal du bare gå med de følgende trin.
1) Download Mysql Connector/Net fra url'en (https://dev.mysql.com /downloads/connector/net/ )
2) Installer stikket; som standard vil stikket blive installeret i stien (C:\Program Files\MySQL\Connector Net 6.9.6), som er den version, jeg har installeret.
3) Åbn VB.Net IDE og start det nye projekt.
4) Tilføj "Mysql.Data.dll" som reference til dit projekt, som du kan finde det i stien (C:\Program Files\MySQL\Connector Net 6.9.6\Assemblies\v4.5);
5) Forbered din tilslutningsformular som vist på dette billede;
6) Opret klassen med navnet "Database" og skriv følgende kode.
Databaseklassekode
Importerer MySql.Data.MySqlClient
Offentlig klassedatabase
Private _connection As New MySqlConnection
Private _errormessge As String
Private _servername As String
Private _databasename As String
Private _userid As String
Private _password As String
Public WriteOnly Property ServerName() As String
Set(ByVal value As String)
_servername = value
End Set
End Property
Public WriteOnly Property DatabaseName() As String
Set(ByVal value As String)
_databasename = value
End Set
End Property
Public WriteOnly Property UserID() As String
Set(ByVal value As String)
_userid = value
End Set
End Property
Public WriteOnly Property Password() As String
Set(ByVal value As String)
_password = value
End Set
End Property
Public ReadOnly Property ErrorMessage() As String
Get
Return _errormessge
End Get
End Property
Public Function Connection() As Boolean
Try
_connection.ConnectionString = "Server=" & _servername & ";Port=3306;Database=" & _databasename & ";User ID=" & _userid & ";Password=" & _password & ""
_connection.Open()
If _connection.State = ConnectionState.Open Then
_connection.Close()
Return True
End If
Catch ex As Exception
_errormessge = ex.Message
Return False
End Try
End Function
Slutklasse
Formularklassekode
Public Class Frm_MainPrivate Sub btn_connect_Click(ByVal afsender Som System.Object, ByVal e As System.EventArgs) Håndterer btn_connect.Click
'Objekterklæring og instansiering
Dæmp data som ny database
With data
'Assing the object property values
.ServerName = txt_server.Text
.DatabaseName = txt_database.Text
.UserID = txt_uid.Text
.Password = txt_pwd.Text
'Connection testing
If .Connection Then
MessageBox.Show("Database Conneted.")
Else
MessageBox.Show(.ErrorMessage)
End If
End With
End Sub
Private Sub btn_exit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_exit.Click
Close()
End Sub
Slutklasse
7) Kør projektet og prøv forbindelsen; hvis forbindelsen er vellykket så dit held; og hvis forbindelsen ikke lykkes med følgende fejlmeddelelse, så fortvivl ikke bare fortsætte med at læse mere;
8) Bemærk ip-adressen på fejlmeddelelsen efter @ (det er din ip) og tilføj den til dit domæne cpanel "remote mysql access" billedet nedenfor illustrerer, hvordan den eksterne mysql-adgang ser ud (de er de samme, men de kan udskyde i farver ); Glem ikke at trykke på knappen "tilføj værter". Disse indstillinger kan fungere dagligt for dem, der er i statisk ip.
Se budskabet om succes efter ovenstående trin;
Men hvis fejlmeddelelsen fortsætter, prøv at lade kodeordsteksten være tom og opret forbindelse igen, hvis du ikke havde nogen adgangskode i din fjerndatabase; hvis fejlen kommer igen, bortset fra at JA er ændret til NEJ, skal du kontrollere, om du er i DHCP;
9) Hvis du er i DHCP, hvilket betyder, at ip'en ændres i hver ny internetforbindelse. Hvis du bruger modem, er du sandsynligvis i DHCP. Hvis du er i dynamiske ips, så tjek hvad der ændrer sig i ip'ens 4 blokke. Hvis den første ip var 197.250.3.201 i den første forbindelse, og den næste ip er 197.250.60.70 og den næste næste ip er 197.250.80.24; du skal tilføje 197.250.% i dine cpanel-adgangsværter for at din forbindelse er stabil.
10) Bemærk:Efterhånden som procentsymbolet (jokertegn) flyder til venstre side af ip-adressen, jo mere åbnes sikkerhedsdøren. Ved ny fejl, kontakt venligst din domæneudbyder, der kan være nogle andre sikkerhedsproblemer på domænet. Tak!