我很难找到如何将 SQL 结果保存为字符串或结果返回的任何类型。
我的 SQL 查询是:
SELECT SUM(Length) FROM tbl_test WHERE TITLE LIKE 't%'
这里我需要一个函数来总结标题以字母“T”开头的所有数据行的长度,当在 MS-SQL 中执行查询时它返回“188.99”(SQL 类型为十进制)
我的问题是,如何将该值保存到 C# 变量中?查询总是返回具有特定值的一行,我想将其保存到一个变量中。我有一个 C# 函数来执行查询,我只需要将该行的值 188.99 保存到一个变量中。任何建议都很酷,无论我是将结果保存到十进制变量还是字符串中。
最佳答案
尝试在您为其准备的 SqlCommand 上调用 .ExecuteScalar()。例如:
SqlConnection connection = new SqlConnection(myConnectionString);
SqlCommand cmd = connection.CreateCommand();
cmd.CommandText = "SELECT SUM(Length) FROM tbl_test WHERE TITLE LIKE 't%'";
int result = ((int)cmd.ExecuteScalar());
connection.Close();
您可以随心所欲地打开和关闭 SqlConnections(每次执行操作时打开和关闭是 SoP,或者在同一方法中进行一系列操作)因为 .Net 不会真正关闭连接,它将“软关闭”它并将实时连接放回连接池中以供以后回收。
关于c# - 如何将 SQL 结果保存到 C# 变量中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5045097/