![](/img/trans.png)
[英]Visual Studio 2022 Crashes when Adding SqlDataSource using any MS Access Database in ASP.NET C# Web Project
[英]Checking if MS Access database in ASP.NET C# returns any rows
我有以下代碼:
cmd.Parameters.AddWithValue("@userName", txtLoginUserName.Text.Trim());
cmd.Parameters.AddWithValue("@password", txtLoginPassword.Text.Trim());
string sqllogin = "SELECT [username],[password] FROM users WHERE ([username] = @userName AND [password] = @password) ";
try
{
con.Open();
cmd.CommandText = sqllogin;
int store = cmd.ExecuteNonQuery();
con.Close();
Label4.Text = store.ToString();
}
catch (Exception ex)
{
con.Close();
}
每當執行時,它將在label4
打印出0
。 這是檢查返回多少行的正確方法嗎?
cmd.Parameters.AddWithValue("@userName", txtLoginUserName.Text.Trim());
cmd.Parameters.AddWithValue("@password", txtLoginPassword.Text.Trim());
string sqllogin = "SELECT count(*) FROM users WHERE ([username] = @userName AND [password] = @password) ";
try
{
con.Open();
cmd.CommandText = sqllogin;
var store = cmd.ExecuteScalar();
con.Close();
Label4.Text = store.ToString();
}
catch (Exception ex)
{
con.Close();
}
為了回答您的特定問題,ExecuteNonQuery()應該返回受影響的行數。 但是,那里的查詢對您沒有多大幫助。
如果您只想知道有多少數據行與該un / pwd組合匹配,那么我將其更改為
"SELECT COUNT([username]) FROM users WHERE ([username] = @userName AND [password] = @password) ";
我仍然看不到這對您有多大用處,但您知道您要做什么:-)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.