繁体   English   中英

连接到 MS Access 数据库 2000 - 2003 格式的 Visual Studio C# windows 窗体中的登录功能。 研究并尝试修复无济于事

[英]login function in a visual studio C# windows form connected to a MS Access database 2000 - 2003 format. Researched and tried fixing to no avail

当我尝试运行应用程序并插入存储的用户名和密码或随机字符时,会弹出错误而不是预期的验证消息。 代码如下:

    private void btnLogin_Click(object sender, EventArgs e)
    {
        //Connection Login form to SQL Database login table to get username and password
        SqlConnection sqlcon = new SqlConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Users\mbewe\Documents\Visual Studio 2019\VS Projects\ZRA Transport Requisition\LoginDB.mdb");
        string query = "Select * from Logininfo where Username = '" + tbUsername.Text.Trim() + "'and Password= '" + tbPassword.Text.Trim() + "'";
        SqlDataAdapter sda = new SqlDataAdapter(query, sqlcon);
        DataTable dtbl = new DataTable();
        sda.Fill(dtbl);
        if (dtbl.Rows.Count == 1)
        {
            //Setting which form to open once username and password have been confirmed
            frmRD objFrmRD = new frmRD();
            this.Hide();
            objFrmRD.Show();
        }
        else
        {
            //Setting message to be shown when username and password do not exist in the database
            MessageBox.Show("Check Your Username and Password");
        }
    }

错误显示: 在此处输入图片说明

正如其他人所说,您需要使用 OleDbConnection。

我修改了你提供的代码,可以成功验证用户名和密码。

 private void button1_Click(object sender, EventArgs e)
        {
            OleDbConnection con = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\\School.mdb");
            con.Open();
            string query = "Select * from Logininfo where Username = '" + tbUsername.Text.Trim() + "'and Password= '" + tbPassword.Text.Trim() + "'";
            OleDbDataAdapter sda = new OleDbDataAdapter(query, con);
            DataTable dtbl = new DataTable();
            sda.Fill(dtbl);
            if (dtbl.Rows.Count == 1)
            {
                MessageBox.Show("success");
                //Setting which form to open once username and password have been confirmed
                Form2 form = new Form2();
                this.Hide();
                form.Show();
            }
            else
            {
                //Setting message to be shown when username and password do not exist in the database
                MessageBox.Show("Check Your Username and Password");
            }


        }

测试结果:

在此处输入图片说明

暂无
暂无

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

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