2016-08-03 8 views
0

私は右ここに私のすべての情報を持っているかなり確信しているが、私はこのエラーSQL接続エラー40 000webhostのVisual Basic

http://puu.sh/qoZDQ/7294d6e682.png

私が使用したコード得続ける:(未鉱山)

私はここにhttp://puu.sh/qoZXo/a391cba854.jpg(またはない、私のinfファイルからデータベース情報を使用

'SET THE CONNECTION BETWEEN VISUAL BASIC AND MYSQL DATABASE 
Dim con As SqlConnection = New SqlConnection("Data Source=mysql9.000webhost.com;" & "Initial Catalog=databasename;" & "User ID=username;" & "Password=password;") 

'A SET OF COMMAND IN MYSQL 
Dim cmd As New SqlCommand 
'SET A CLASS THAT SERVES AS THE BRIDGE BETWEEN A DATASET AND DATABASE FOR SAVING AND RETRIEVING DATA. 
Dim da As New SqlDataAdapter 
'SET A CLASS THAT CONSISTS SPECIFIC TABLE IN THE DATABASE 
Dim dt As New DataTable 
Dim sqlQuery As String 
Dim result As Integer 

Private Sub register(ByVal sqlQuery As String) 
    Try 
     'OPENING THE CONNECTION 
     con.Open() 
     'HOLDS THE DATA TO BE EXECUTED 
     With cmd 
      .Connection = con 
      .CommandText = sqlQuery 
     End With 
     'EXECUTE THE DATA 
     Result = cmd.ExecuteNonQuery 
     'CHECKING IF THE DATA HAS BEEN EXECUTED OR NOT 
     If result > 0 Then 
      MsgBox("User has been registered.") 
     Else 
      MsgBox("Failed to register the user.") 
     End If 
     con.Close() 
    Catch ex As Exception 
     MsgBox(ex.Message) 
    End Try 
End Sub 

Private Sub login(ByVal sqlQuery As String) 
    Try 
     con.Open() 
     With cmd 
      .Connection = con 
      .CommandText = sqlQuery 
     End With 
     'FILLING THE DATA IN A SPECIFIC TABLE OF THE DATABASE 
     da.SelectCommand = cmd 
     dt = New DataTable 
     da.Fill(dt) 
     'DECLARING AN INTEGER TO SET THE MAXROWS OF THE TABLE 
     Dim maxrow As Integer = dt.Rows.Count 
     'CHECKING IF THE DATA IS EXIST IN THE ROW OF THE TABLE 
     If maxrow > 0 Then 
      MsgBox("Welcome " & dt.Rows(0).Item(4)) 
     Else 
      MsgBox("Account does not exist.") 
     End If 
    Catch ex As Exception 
     MsgBox(ex.Message) 
    End Try 
    con.Close() 
End Sub 

Private Sub btn_Register_Click(sender As Object, e As EventArgs) Handles btn_Register.Click 
    sqlQuery = "INSERT INTO `dbuser` (`user_name`, `user_username`, `user_pass`, `user_type`, `user_steamid`)" & "VALUES ('" & txtname.Text & "','" & txtusername.Text & "','" & txtpassword.Text & "','" & cbotype.Text & "','" & txtsteamid.Text & "')" 
    register(sqlQuery) 
End Sub 

Private Sub btn_Login_Click(sender As Object, e As EventArgs) Handles btn_Login.Click 
    sqlQuery = "SELECT * FROM `dbuser` WHERE user_username ='" & txtusername.Text & "' AND user_pass = '" & txtpassword.Text & "'" 
    login(sqlQuery) 
End Sub 

(と思う)右のユーザ名、パスワードおよびデータベース名を持っています)ので、私は公に自分の情報を掲載いけない単なる一例O

+0

MySqlはMicrosoft SqlServerと同じものではありません – Plutonix

+0

これを修正するにはどうすればよいですか? 私が見つけることができるvbのための "mysqlclient"がない、ただSqlClient – FBspitty

+0

私は、MySQLの一部を固定してフレームワークをダウンロードし、 "import MySql.Data.MySqlClient"を実行しました。コードの問題またはサーバーの問題ですか? – FBspitty

答えて

0

私はPlutonixが

MySQLはマイクロソフトのSQLServerと同じものではありませんコメント何の助けを借りて、私の問題を修正 - Plutonix

をだから私はいくつかのグーグルを行なったし、これを見つけた:https://dev.mysql.com/downloads/connector/net/

このMySQL用の.NET Frameworkが(私は右の用語thatsのだと思う)

です、ちょうど最初のビットに私を追加することにより、

imports MySql.Data.MySqlClient 

とMySQL変数にコード内のSQL変数を変更する:0

はとにかく

imports System.Data.SqlClient 

からに私のコードの先頭行を変更し、その後、これをインストールしますそれは "良い"私は今新しい問題があるが、000webhostsのMySQLデータベースではなく、コードを動作するように見えます。

関連する問題