C# 我的insert命令在通过编程使用时不更改数据库
当我用查询数据库插入值时,当我用编码插入值时,它不会插入,尽管它显示成功。我使用的C#2010和2012都没有添加 我的代码C# 我的insert命令在通过编程使用时不更改数据库,c#,mysql,.net,visual-studio-2010,sql-server-2008,C#,Mysql,.net,Visual Studio 2010,Sql Server 2008,当我用查询数据库插入值时,当我用编码插入值时,它不会插入,尽管它显示成功。我使用的C#2010和2012都没有添加 我的代码 SqlCommand是一个类,这意味着它是一个引用类型 每次创建新的SqlCommand对象并将其cmd作为参考时。这意味着只有最后一个SqlCommand执行。使用ExecuteNonQuery方法执行时,前两个SqlCommand在内存中不再有引用 如果要执行所有这些命令,则需要分别执行每个命令 请使用。这种类型的字符串连接对攻击是开放的 还可用于处理数据库连接 us
SqlCommand
是一个类,这意味着它是一个引用类型
每次创建新的SqlCommand
对象并将其cmd
作为参考时。这意味着只有最后一个SqlCommand
执行。使用ExecuteNonQuery
方法执行时,前两个SqlCommand
在内存中不再有引用
如果要执行所有这些命令,则需要分别执行每个命令
请使用。这种类型的字符串连接对攻击是开放的
还可用于处理数据库连接
using(SqlCommand cmd = new SqlCommand(YourInsertStatement))
{
con.Open();
cmd.ExecuteNonQuery();
cmd.CommandText = YourFirstUpdateStatement;
cmd.ExecuteNonQuery();
cmd.CommandText = YourSecondUpdateStatement;
cmd.ExecuteNonQuery();
}
优秀、结构合理的响应,以及良好的最佳实践信息。OP应该接受这个答案。非常感谢最好的解决方案
using(SqlCommand cmd = new SqlCommand(YourInsertStatement))
{
con.Open();
cmd.ExecuteNonQuery();
cmd.CommandText = YourFirstUpdateStatement;
cmd.ExecuteNonQuery();
cmd.CommandText = YourSecondUpdateStatement;
cmd.ExecuteNonQuery();
}