【发布时间】:2026-02-07 02:00:02
【问题描述】:
我最近是 C# 的新手,并遵循关于连接数据库的教程,用于查看的连接或SELECT 命令是好的,我根据论坛的线程进行了一些修改以使我的代码更好,但是当我在INSERT 我的 SQL Server 中,我遇到了一些问题。我能够插入数据,但是当我重新运行程序时,我刚刚插入的数据不在数据库中。
这是我的插入代码
string commandText = "INSERT INTO loginInfo (name, pass, role) VALUES(@name, @pass, @role)";
using (connection = new SqlConnection(connectionString))
{
SqlCommand command = new SqlCommand(commandText, connection);
command.CommandType = CommandType.Text;
command.Parameters.AddWithValue("@name", textBox1.Text);
command.Parameters.AddWithValue("@pass", textBox2.Text);
command.Parameters.AddWithValue("@role", textBox3.Text);
try
{
command.Connection.Open();
command.ExecuteNonQuery();
}
catch
{
}
finally
{
command.Connection.Close();
}
}
我正在尝试创建一个简单的 CRUD,但不保存数据...请帮助
【问题讨论】:
-
移除空的catch块并检查异常。它应该告诉你出了什么问题
-
ExecuteNonQuery之后可以尝试关闭连接吗? -
+1 到 @doerig 。切勿保留空渔获物。请尝试逐步调试并检查您在哪里得到异常。执行非查询返回'int',它会告诉你插入的状态,数据是否插入。
-
@yok2xDuran
using将关闭连接,您不必使用finally块。您使用的整个try/catch块只是隐藏了错误,仅此而已 -
您能告诉我们您正在使用的连接字符串吗?我怀疑你可能在那里使用了
AttachDbFileName=子句,这会导致麻烦
标签: c# sql-server