C# 如何获取SQL代码生成和返回代码
我正在执行一个非查询SQL。我想知道我们在Visual studio 2013中的何处可以看到生成的SQL和错误代码C# 如何获取SQL代码生成和返回代码,c#,asp.net,sql,C#,Asp.net,Sql,我正在执行一个非查询SQL。我想知道我们在Visual studio 2013中的何处可以看到生成的SQL和错误代码 string cmdText = "UPDATE RendezVous SET nomClientEssai=@nomClientEssai,prenomClientEssai=@prenomClientEssai, IsAvailable=@IsAvailable WHERE rdvId=@rdvId"; SqlC
string cmdText = "UPDATE RendezVous SET
nomClientEssai=@nomClientEssai,prenomClientEssai=@prenomClientEssai,
IsAvailable=@IsAvailable WHERE rdvId=@rdvId";
SqlCommand cmd = new SqlCommand(cmdText, con);
cmd.Parameters.AddWithValue("@nomClientEssai", Convert.ToString(Session["nom"]));
cmd.Parameters.AddWithValue("@prenomClientEssai", Convert.ToString(Session["prenom"]));
cmd.Parameters.AddWithValue("@IsAvailable", "False");
cmd.Parameters.AddWithValue("@rdvId", cleRdvId);
if (con.State == ConnectionState.Closed)
{
con.Open();
}
cmd.ExecuteNonQuery(); <=== I want to see the sql return code here !!!
con.Close();
string cmdText=“更新集合
nomClientEssai=@nomClientEssai,prenomClientEssai=@prenomClientEssai,
IsAvailable=@IsAvailable,其中rdvId=@rdvId”;
SqlCommand cmd=新的SqlCommand(cmdText,con);
cmd.Parameters.AddWithValue(“@nomClientEssai”,Convert.ToString(会话[“nom”]);
cmd.Parameters.AddWithValue(“@prenomClientEssai”,Convert.ToString(Session[“prenom”]);
cmd.Parameters.AddWithValue(“@IsAvailable”,“False”);
cmd.Parameters.AddWithValue(“@rdvId”,cleRdvId);
if(con.State==ConnectionState.Closed)
{
con.Open();
}
cmd.ExecuteNonQuery() ExecuteNonQuery
因此,请按如下方式更新您的代码,并查看update
语句的numberOfRecordsUpdated
中的内容
int numberOfRecordsUpdated = comm.ExecuteNonQuery();
ExecuteNonQuery
因此,请按如下方式更新您的代码,并查看update
语句的numberOfRecordsUpdated
中的内容
int numberOfRecordsUpdated = comm.ExecuteNonQuery();
要从数据库获取有关错误或简单输出的信息(从sql server获取严重性低于或等于10的任何内容),您可以订阅SqlConnection的事件。这是一个简单的例子:
con.InfoMessage += new SqlInfoMessageEventHandler((sender, a) => { Console.WriteLine(a.Message);});
要从数据库获取有关错误或简单输出的信息(从sql server获取严重性低于或等于10的任何内容),您可以订阅SqlConnection的事件。这是一个简单的例子:
con.InfoMessage += new SqlInfoMessageEventHandler((sender, a) => { Console.WriteLine(a.Message);});
如果要查看数据库中的内容,请使用SQL事件探查器。如果要查看数据库中的内容,请使用SQL事件探查器。更新没有返回代码。如前所述,ExecuteNonQuery
返回受影响的记录数,但它不会告诉您该记录数受影响的原因
我将在调试器中运行它,以验证是否使用了正确的cleRdvId值。UPDATE
没有返回代码。如前所述,ExecuteNonQuery
返回受影响的记录数,但它不会告诉您该记录数受影响的原因
我会在调试器中运行它,以验证使用的cleRdvId
值是否正确。如果我理解正确,则您正在尝试获取发送到SQL Server的最终SQL命令。这就是您要查找的吗?因为我没有执行错误,所以我需要验证生成了哪个SQL以及返回代码。也许它会给我一个提示,说明什么地方工作不正常。您能解释一下如何检查创建的SQL以及在哪里找到SQL返回代码吗。如果你有任何链接或例子,它将非常感谢。感谢发送到SQL Server的最后一个SQL命令是cmdText
。参数将其完整地发送到SQL server。可能只是rdvId=@rdvId
不匹配任何内容,因此不会更新任何内容。您能验证这是否正确吗?我检查了rvdId,它等于14,这是我要更新的行。如果我理解正确,您正在尝试获取发送到SQL Server的最终SQL命令。这就是您要查找的吗?因为我没有执行错误,所以我需要验证生成了哪个SQL以及返回代码。也许它会给我一个提示,说明什么地方工作不正常。您能解释一下如何检查创建的SQL以及在哪里找到SQL返回代码吗。如果你有任何链接或例子,它将非常感谢。感谢发送到SQL Server的最后一个SQL命令是cmdText
。参数将其完整地发送到SQL server。可能只是rdvId=@rdvId
不匹配任何内容,因此不会更新任何内容。您能验证这是否正确吗?我检查了rvdId,它等于14,这是我要更新的行。cleRdvId设置为14,这与表中的确切行相对应。numberOfRecordsUpdated=1。该表已更新!!但是会话[clientName]似乎是空的。我将调查原因。cleRdvId设置为14,这与表中的确切行相对应。numberOfRecordsUpdated=1。该表已更新!!但是会话[clientName]似乎是空的。我会调查原因。