protected void Button1_Click(object sender, EventArgs e)
{
string connString = "Data Source=localhost;Initial Catalog=test_db;Integrated Security=True;";
string insertCommand = "INSERT INTO empDetl (empName,addr) values(@empName,@addr)";
string _name = txtName.Text;
string _addr = txtAddr.Text;
using(SqlConnection conn = new SqlConnection(connString))
{
//open DB Connection
conn.Open();
using (SqlCommand cmd = new SqlCommand(insertCommand, conn))
{
cmd.Parameters.Clear();
cmd.Parameters.AddWithValue("@empName", _name);
cmd.Parameters.AddWithValue("@addr", _addr);
cmd.ExecuteNonQuery();
}
conn.Close();
}
}
此代码无法正常运行。请告诉我错误的位置。插入值时会显示“无效的对象名称'empDetl'”,但我的表名是empDetl。
答案 0 :(得分:2)
这里可能存在数据库安全问题。
"Data Source=localhost;Initial Catalog=test_db;Integrated Security=True;";
这将使用当前的Windows用户(在Web应用程序的情况下,可能是IIS用户或您的应用程序运行的任何用户)使用Windows身份验证连接到数据库。
虽然您的表可能存在,但连接用户可能无法看到它。
尝试通过管理工作室
将您的连接字符串更改为与数据库连接的相同用户凭据"Data Source=localhost;Initial Catalog=test_db;User Id=sa;Password=********;";