简体   繁体   English

试图使用vb.net将记录输入到mysql数据库中,但它不起作用,我无法弄清为什么

[英]Trying to enter records into a mysql database using vb.net but its not working and I cant figure out why

Mysql is connected to my vb so thats not the problem Im not really sure whats wrong. Mysql连接到我的vb,所以那不是问题。我不是很确定怎么了。

This is a register account form, im using xampp for mysql. 这是一个注册帐户表格,即时通讯使用xampp用于mysql。

Public Class 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

First of all, that's some very bad code - I know this isn't CodeReview, but still, it needs to be pointed out! 首先,这是一些非常糟糕的代码-我知道这不是CodeReview,但仍然需要指出! Have a look at codereview.stackexchange.com if you want to brush up on best practices (I appreciate you might be a first time coder...). 如果您想了解最佳实践,请访问codereview.stackexchange.com (我很高兴您可能是第一次使用编码器...)。

To answer the question, you are using COMMAND.ExecuteReader - this should be replaced with COMMAND.ExecuteNonQuery . 为了回答这个问题,您使用的是COMMAND.ExecuteReader应该用COMMAND.ExecuteNonQuery代替。 You're not reading from the database, you're writing data into it (INSERT command in the SQL). 您不是从数据库中读取数据,而是向其中写入数据(SQL中的INSERT命令)。

If it still doesn't work after changing that, please update your question to include more detail, such as the exception generated, etc. 如果更改后它仍然不起作用,请更新您的问题以包括更多详细信息,例如生成的异常等。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM