C# 如何检查我的查询是否在方法ExecuteOnQuery()中运行?
我想检查methode ExecuteOnQuery()中的查询是否正在运行。 以下是我在WCF服务中的代码:C# 如何检查我的查询是否在方法ExecuteOnQuery()中运行?,c#,sql,wcf,C#,Sql,Wcf,我想检查methode ExecuteOnQuery()中的查询是否正在运行。 以下是我在WCF服务中的代码: public string Execute(string query){ string connectionString = ConfigurationManager.ConnectionStrings["ConnWf"].ConnectionString; string hasil = "ERROR"; usi
public string Execute(string query){
string connectionString = ConfigurationManager.ConnectionStrings["ConnWf"].ConnectionString;
string hasil = "ERROR";
using (SqlConnection conn = new SqlConnection(connectionString))
{
conn.Open();
string cmdStr = String.Format(query);
SqlCommand command = new SqlCommand(cmdStr, conn);
command.Connection.Open();
command.ExecuteNonQuery();
//I want to check here..
if (command.ExecuteNonQuery().HasRows) //it doesn't works :(
{
hasil = "SUCCESS \n Row Affected: " + rd.RecordsAffected;
}
else
{
hasil = "FAILED \n Row Affected: " + rd.RecordsAffected;
}
conn.Close();
}
return "Query: "+query+"\n Status: "+hasil;
}
ExecuteNonQuery()
返回一个整数,该整数是受sql语句影响的行的总和。i、 e.如果SSM返回:
(614 row(s) affected)
(123 row(s) affected)
ExecuteNonQuery()
将返回737
所以你可以用这样的东西
try
{
hasil = string.Format("Success \n Rows Affected: {0}", command.ExecuteNonQuery());
}
catch
{
hasil = "Failed \n Rows Affected: 0";
}
您还应该考虑使用SQ/Load的<<代码>块以及SQLCONNECT.< /P> < P> <代码> ExtUnEngQuices()/Curr>返回一个整数,该整数将是SQL语句影响的行的总和。i、 e.如果SSM返回:
(614 row(s) affected)
(123 row(s) affected)
ExecuteNonQuery()
将返回737
所以你可以用这样的东西
try
{
hasil = string.Format("Success \n Rows Affected: {0}", command.ExecuteNonQuery());
}
catch
{
hasil = "Failed \n Rows Affected: 0";
}
您也应该考虑使用 < P>您可以在本地测试WCF服务,并且可以确认<代码> ExcuteNoQuices()/代码>工作
int result = command.ExecuteNonQuery();
结果将显示受ExecuteOnQuery()影响的行数。您也可以在本地测试WCF服务,并确认
ExecuteOnQuery()
正在工作
int result = command.ExecuteNonQuery();
结果将显示受ExecuteOnQuery()影响的行数。谢谢,它可以工作。关于我的问题,我还有一个问题,您可以在
string cmdStr=string.Format(query)上看到
我想把查询
放在选择
或插入
之类的地方,为什么它不能运行该查询而只执行存储过程?再次感谢:)更新:很抱歉,当我尝试从我的表中运行select*时,它显示-1,但在我的数据库管理中,它显示(受影响的10行)
为什么我的成功报告中没有显示10
?对不起,我的答案不清楚,这只返回受插入/删除/更新影响的行,而不是select。为什么要对select语句使用ExecuteNonQuery()?如果您需要知道满足特定条件的行数,请使用COUNT
和ExecuteScalar()
是的,当我使用它进行插入、删除和更新时,它会显示受影响的行。但是没关系,我只想检查如果使用select:)会发生什么。非常感谢,它很有效。关于我的问题,我还有一个问题,您可以在string cmdStr=string.Format(query)上看到
我想把查询
放在选择
或插入
之类的地方,为什么它不能运行该查询而只执行存储过程?再次感谢:)更新:很抱歉,当我尝试从我的表中运行select*时,它显示-1,但在我的数据库管理中,它显示(受影响的10行)
为什么我的成功报告中没有显示10
?对不起,我的答案不清楚,这只返回受插入/删除/更新影响的行,而不是select。为什么要对select语句使用ExecuteNonQuery()?如果您需要知道满足特定条件的行数,请使用COUNT
和ExecuteScalar()
是的,当我使用它进行插入、删除和更新时,它会显示受影响的行。。但是没关系,我只想检查如果使用select:)会发生什么。非常感谢