[英]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.