我正在构建注册页面,我需要做的一件事就是检查提供的电子邮件是否已经存在。这是我的代码:
// Check if email already exists in the database
cn.Open();
SqlCommand Command = new SqlCommand("SELECT Email FROM Users WHERE Email = @Email", cn);
Command.Parameters.Add("@Email", SqlDbType.NVarChar).Value = _Email;
SqlDataReader Reader = Command.ExecuteReader(CommandBehavior.CloseConnection);
Reader.Read();
if (Reader.HasRows)
{
// Email already exists
Reader.Close();
Feedback.Text = "That email is already in use, please use another";
}
else
{
// Doesn't exist, proceed
}
运行此代码时,我会在COmmand.ExecuteReader()
行上触发以下异常:
System.Data.SqlClient.SqlException: Invalid object name 'Users'.
据我所知,这意味着它无法找到Users表。它肯定存在,我刚刚创建它,我可以在Server Explorer窗口中看到它:
此外,在我的连接字符串中,我有Initial Catalog=db_74;
所以它正在使用正确的数据库。
所以,我对可能出现的问题感到茫然。有什么想法吗?
答案 0 :(得分:0)
如果你使用的是SqlExpress你的连接字符串应该是这样的:
Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\db_74.mdf;Integrated Security=True;User Instance=True