使用C在MS Access中未插入数据# private void按钮1\u单击(对象发送者,事件参数e) { 尝试 { OleDbConnection connection=新的OleDbConnection(); connection.ConnectionString=@“Provider=Microsoft.ACE.OLEDB.12.0;数据源=C:\Users\Sanket\Desktop\Practice\C#Practice\AIChatbot\Db\Login.accdb;持久安全信息=False;”; connection.Open(); string query=“插入userLogin(用户名、密码)值(“+tuser.Text+”、“+tpassword.Text+”)”; OleDbCommand cmd=新的OleDbCommand(查询、连接); int a=cmd.ExecuteNonQuery(); connection.Close(); } 捕获(例外c) { MessageBox.Show(“错误”+c); } }

使用C在MS Access中未插入数据# private void按钮1\u单击(对象发送者,事件参数e) { 尝试 { OleDbConnection connection=新的OleDbConnection(); connection.ConnectionString=@“Provider=Microsoft.ACE.OLEDB.12.0;数据源=C:\Users\Sanket\Desktop\Practice\C#Practice\AIChatbot\Db\Login.accdb;持久安全信息=False;”; connection.Open(); string query=“插入userLogin(用户名、密码)值(“+tuser.Text+”、“+tpassword.Text+”)”; OleDbCommand cmd=新的OleDbCommand(查询、连接); int a=cmd.ExecuteNonQuery(); connection.Close(); } 捕获(例外c) { MessageBox.Show(“错误”+c); } },c#,C#,以下是当前代码的问题: 密码是Access中的保留关键字。你需要把它包起来 方括号 连接字符串以创建SQL查询是众所周知的 问题(,解析) 应打开、使用连接,然后进行处置。使用 声明 从安全角度来看,另一个弱点是在数据库中以纯文本形式存储密码。任何能够复制该文件的人都知道您的用户密码。搜索以将其存储在数据库中 private void button1_Click(object sender, EventArgs e) { try { using(OleDbC

以下是当前代码的问题:


  • 密码是Access中的保留关键字。你需要把它包起来 方括号
  • 连接字符串以创建SQL查询是众所周知的 问题(,解析)
  • 应打开、使用连接,然后进行处置。使用 声明
从安全角度来看,另一个弱点是在数据库中以纯文本形式存储密码。任何能够复制该文件的人都知道您的用户密码。搜索以将其存储在数据库中


private void button1_Click(object sender, EventArgs e)
{
    try
    {
        using(OleDbConnection connection = new OleDbConnection())
        {
            connection.ConnectionString = @".....";
            connection.Open();
            string query = @"insert into userLogin(username,[password])
                             values(@user, @pass)";
            OleDbCommand cmd = new OleDbCommand(query,connection);
            cmd.Parameters.Add("@user", OleDbType.VarWChar).Value = tuser.Text;
            cmd.Parameters.Add("@pass", OleDbType.VarWChar).Value = tpassword.Text;
            int a = cmd.ExecuteNonQuery();
        }
    }
    catch (Exception c)
    {
        MessageBox.Show("Error"+c);
    }
}


-您不应该将SQL语句连接在一起-使用参数化查询来避免SQL注入-签出密码是access中的保留关键字-您需要编写[密码],并尽快学习如何编写参数化查询这是否回答了您的问题?