ExecuteNonQuery中的对象名称无效

本文关键字:无效 对象 ExecuteNonQuery | 更新日期: 2023-09-27 17:49:24

我目前正在尝试开发一个应用程序,允许您跟踪您的消费作为我的类的一部分。然而,我遇到了错误"无效的对象名称"dbo。AccTransactions "

My Windows Form Code:

    string command = "Insert INTO dbo.AccTransactions (id, transact_id, payee, dateof, amount, category)"
                            + "Values (@id, @transact_id, @payee, @dateof, @amount, @category)";
        SqlCommand cmd = new SqlCommand(command, con);
        cmd.Parameters.AddWithValue("@id", 1);
        cmd.Parameters.AddWithValue("@transact_id", 2);
        cmd.Parameters.AddWithValue("@payee", payeeTextBox.Text);
        cmd.Parameters.AddWithValue("@dateof", DateTime.Today);
        cmd.Parameters.AddWithValue("@amount", Convert.ToDecimal(amountTextBox.Text));
        cmd.Parameters.AddWithValue("@category", categoryTextBox.Text);
        con.Open();
        cmd.ExecuteNonQuery();
        con.Close();

My Connection String:

     SqlConnection con = new SqlConnection(@"Data Source=IVY'SQLEXPRESS;Initial Catalog=BudgetTracker;Integrated Security=SSPI;Connect Timeout=15;Encrypt=False;TrustServerCertificate=False");

我的数据库中有表"dbo "。AccTransactions",它在SSMS中表现完美。

任何帮助将是伟大的!

ExecuteNonQuery中的对象名称无效

我猜你在连接字符串中缺少数据库名称。

SqlConnection con = new SqlConnection(@"Data Source=IVY'SQLEXPRESS;Integrated Security=True;Connect Timeout=15;Encrypt=False;TrustServerCertificate=False");

试着把你的数据库名放在下面的字符串中。

 SqlConnection con = new SqlConnection(@"Data Source=IVY'SQLEXPRESS; Initial Catalog=YOUR_DATABASE_NAME;Integrated Security=True;Connect Timeout=15;Encrypt=False;TrustServerCertificate=False");

请检查运行程序的用户是否有权访问该表。很可能需要将用户设置为dbo,因为访问表的方式是dbo. acctransactions .