VB.Net MySQL如何将值插入数据库

问题描述 投票:0回答:2

Pro Devs我正在使用VB.Net和MySQL数据库,我想在我的数据库中插入值。示例:我的数据库中的值是Admin11但是当我插入另一个值admin11时,我得到一个错误,这是我的代码。顺便说一下,这两种方法属于不同的类。

'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

这是我的代码,用于检查数据库中是否存在Username ...

Public Sub checkUsernameIfExist()

    Dim con = New MySqlConnection
    con.ConnectionString = "server=localhost;userid=root;password=alpine;port=3305;database=pos_db;pooling=false;SslMode=none"

    con.Open()
    Dim query As String = "SELECT Username FROM pos_db.tblusers WHERE BINARY Username=@Users"
    Dim cmd As New MySqlCommand(query, con)
    cmd.Parameters.AddWithValue("@Users", frmLogin.txtUser.Text)

    Dim count As Integer = Convert.ToInt32(cmd.ExecuteScalar())

    If count <> 0 Then
        MessageBox.Show("Username is already taken. Please create a unique one!", "System", MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
        Return
    Else
        insertDataToTblUser.insertToLogin()
    End If
    con.Close()
    con.Dispose()
End Sub

''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

这是插入值中的代码......

Dim con As MySqlConnection

Public Sub insertToLogin()
    con = New MySqlConnection
    con.ConnectionString = "server=localhost;userid=root;password=alpine;port=3305;database=pos_db;pooling=false;SslMode=none"

    con.Open()

    Dim qry As String = "INSERT INTO tblUsers (Username,Password,Level) VALUES (@User,@Pass,@lvl)"
    Dim cmd As New MySqlCommand(qry, con)
    cmd.Parameters.AddWithValue("@User", frmLogin.txtUser.Text)
    cmd.Parameters.AddWithValue("@Pass", frmLogin.txtPass.Text)
    cmd.Parameters.AddWithValue("@lvl", frmLogin.cmbUserlevel.Text)
    cmd.ExecuteNonQuery()

    MessageBox.Show("Sign Up Successful", "System", MessageBoxButtons.OK, MessageBoxIcon.Information)

    con.Close()
    con.Dispose()
End Sub

请多多帮助我。

mysql vb.net
2个回答
2
投票

这些解决了我的问题感谢所有帮助我的人。

CREATE TABLE `pos_db`.`tblForLogin` (
    `Username` VARCHAR(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL UNIQUE, 
    `Password` VARCHAR(50) NOT NULL,
    `Level` VARCHAR(50) NOT NULL, 
    PRIMARY KEY(Username)
);

0
投票

MySQL Reserved Words

更改您的查询:

Dim qry As String = "INSERT INTO tblUsers (Username,`Password`,`Level`) VALUES (@User,@Pass,@lvl)"
© www.soinside.com 2019 - 2024. All rights reserved.