gpt4 book ai didi

c# - 检查数据表是否为空

转载 作者:可可西里 更新时间:2023-11-01 08:30:40 25 4
gpt4 key购买 nike

以下代码是我一直用来从 sql 数据库中检索用户信息的代码。

            string userName = LoginUser.UserName;
string password = LoginUser.Password;
string comm = "SELECT Username,Password,Clientname,Role FROM Users WHERE Username = '" + userName + "';";
bool rememberUserName = LoginUser.RememberMeSet;

SqlConnection conn = new SqlConnection(connstring);
conn.Open();

SqlCommand command = new SqlCommand(comm, conn);
SqlDataAdapter da = new SqlDataAdapter(command);
DataTable dt = new DataTable();
da.Fill(dt);
DataRow dr = dt.NewRow();
if (dt != null)
{
//logic
}

但是,当数据库中没有用户名等于 LoginUser.Username 的条目时,(dt != null) 不会返回 false。是否有不同的方法来检查 sql 命令是否成功?

最佳答案

如果没有记录匹配,您将得到一个空的 DataTable,因此您可以检查返回的记录数:

if (dt.Rows.Count > 0)

并且,稍微偏离主题,请阅读您的问题下方的评论,然后谷歌术语 SQL 注入(inject)和参数化 SQL 语句。尝试从 this 开始.

关于c# - 检查数据表是否为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12358950/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com