C#SQL Server Compact数据库登录

本文关键字:登录 数据库 Compact Server C#SQL | 更新日期: 2023-09-27 18:25:38

我正在C#中创建一个桌面应用程序。我正在创建一个登录表单。我有一个名为MyTable的表,列为usernamepassword

我想对用户进行身份验证,所以我想知道SQL查询影响的行数。但每次都是通过执行ExecuteNonQuery()方法得到-1

我的代码:

string Username = username.Text;
string Password = password.Text;
SqlCeCommand commandSelect = new SqlCeCommand("SELECT * FROM MyTable WHERE username=@username AND password=@password", connection);
commandSelect.Parameters.AddWithValue("@username", Username);
commandSelect.Parameters.AddWithValue("@password", Password);
int rows = commandSelect.ExecuteNonQuery();
MessageBox.Show(rows.ToString());

提前谢谢。

C#SQL Server Compact数据库登录

您最好更改SQL以获得如下计数:

SELECT COUNT(*) FROM MyTable WHERE username=@username AND password=@password

然后使用ExecuteScalar()而不是ExecuteNonQuery。这样以后就不太可能让你头疼了。

我相信ExecuteNonQuery()总是返回-1,所以在这种情况下不要使用它。史蒂夫的回答应该会奏效。