运行我的程序时我得到这个错误我调试:System.Data.SqlClient.SqlException:'无效的对象名'登录'。'

时间:2018-03-21 23:03:52

标签: c# sql-server

我正在尝试使用我不熟悉的SqlServer构建日志。我不是要求一个非常精确的答案,而是要求在错误的一般方向上提供更多的答案。我是否应该了解有关SqlServer的更多信息以解决此问题,或者是否是其他地方的错误?

namespace Log_in
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void btnLogIn_Click(object sender, EventArgs e)
        {
            SqlConnection con = new SqlConnection(@"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=C:\Users\Joel\Documents\Data.mdf;Integrated Security=True;Connect Timeout=30");
            SqlDataAdapter sda = new SqlDataAdapter("SELECT COUNT(*) FROM Login WHERE Username='" + tbxLogIn.Text + "'AND Password ='"+tbxPassword.Text+"'", con);
            DataTable dt = new DataTable();
            sda.Fill(dt);
            if (dt.Rows[0][0].ToString() == "1")
            {
                this.Hide();
                Main ss = new Main();
                ss.Show();
            }
            else
            {
                MessageBox.Show("Incorrect log in details.");
            }
        }

        private void btnExit_Click(object sender, EventArgs e)
        {
            this.Close();
        }
    }
}

1 个答案:

答案 0 :(得分:1)

  1. 该错误意味着它没有看到Login。表格不存在,或者您需要通过架构访问它。
  2. 此代码易受SQL Injection攻击。 了解参数化查询或使用Entity Framework之类的内容。 More Info on how parameterized queries solves the problem