2016-09-21 10 views
0

Mysqlが私のVBに接続されているので問題はありません。vb.netを使用してmysqlデータベースにレコードを入力しようとしていますが、機能していないとわかりません。なぜ

これは登録アカウントフォームです.imはxamppをmysqlに使用しています。

パブリック・クラスReigsteraccount

Public Class Form1 

    Dim conn As MySqlConnection 
    Dim COMMAND As MySqlCommand 
    Dim WithEvents Button1 As New Button 
    Dim WithEvents Textbox1 As New TextBox 
    Dim WithEvents Textbox2 As New TextBox 
    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click 
     conn = New MySqlConnection 
     conn.ConnectionString = "server=localhost;userid=root;password=root;database=compproject" 
     Dim READER As MySqlDataReader 


     Try 
      conn.Open() 
      Dim Query As String 
      Query = "insert into compproject.users (Usernames,Passwordhash) values ('" & Textbox1.Text & "','" & Textbox2.Text & "')" 
      COMMAND = New MySqlCommand(Query, conn) 
      READER = COMMAND.ExecuteReader 


      MessageBox.Show("Record added") 
      conn.Close() 
     Catch ex As MySqlException 
      MessageBox.Show(ex.Message) 
     Finally 
      conn.Dispose() 

     End Try 
    End Sub 
End Class 
+0

パスワードが 'root'ですか?デフォルトでは通常は空白です。 –

答えて

1

まず第一に、それはいくつかの非常に悪いコードだ - 私は、これはコードレビューではないですけど、それでも、それは指摘する必要があります!ベストプラクティスをブラッシュアップしたい場合はcodereview.stackexchange.comをご覧ください(初心者かもしれません...)。

質問に答えるにはCOMMAND.ExecuteReaderを使用しています。これはCOMMAND.ExecuteNonQueryに置き換えてください。あなたはデータベースから読んでいない、あなたはそれにデータを書いている(SQLのINSERTコマンド)。

それはまだそれは、あなたの質問に例外が発生したなどの詳細を含むようにを更新してください変更した後に動作しない場合など

+0

ありがとうございます、ボタンを押して値を挿入すると、例外メッセージが表示されませんでした。何もしなかったので、コードを変更して変更があるかどうかを確認します。 –

+0

あなたは 'MySQLException'を捕まえるだけです。普通の 'Exception'のために別のcatch節を追加し、それがあなたに与えるものを見てください。 – Grim

関連する問題