C# 获取查询的int值
我有以下代码C# 获取查询的int值,c#,database,winforms,int,C#,Database,Winforms,Int,我有以下代码 string connStr = String.Format("server=localhost;user id=root; password=1234;" + "database=Printermangement; pooling=false", "localhost", "root", "1234"); string Query = "select sum(Page_Printed) from printjobdetails where User_ID = 'MyPropert
string connStr = String.Format("server=localhost;user id=root; password=1234;" + "database=Printermangement; pooling=false", "localhost", "root", "1234");
string Query = "select sum(Page_Printed) from printjobdetails where User_ID = 'MyProperty'GROUP by User_ID";
MySqlConnection conDataBase = new MySqlConnection(connStr);
MySqlCommand cmdDataBase = new MySqlCommand(Query, conDataBase);
MessageBox.Show(Query);
我想从这个查询中获取sum
,但我不知道如何获取要显示在消息框中的int
值。我该怎么做 您可以使用以下方法:
我还将命令和连接对象放置在块中。这将确保它们被安全关闭,并且它们使用的任何非托管资源都将被正确处置。此示例来自Jan Bodnar(非常有用),经过轻微编辑,使用ExecuteScalar()
方法执行查询
using System;
using MySql.Data.MySqlClient;
public class Example
{
static void Main()
{
string cs = @"server=localhost;userid=user12;
password=34klq*;database=mydb";
MySqlConnection conn = null;
MySqlDataReader rdr = null;
try
{
conn = new MySqlConnection(cs);
conn.Open();
string stm = "SELECT * FROM Authors";
MySqlCommand cmd = new MySqlCommand(stm, conn);
int sum = (int)cmd.ExecuteScalar();
Console.WriteLine(sum);
} catch (MySqlException ex)
{
Console.WriteLine("Error: {0}", ex.ToString());
} finally
{
if (conn != null)
{
conn.Close();
}
}
}
}
MessageBox.Show(查询)代码>显示查询,而不是结果。为什么ExecuteReader
?OP只需要一个值<代码>执行Calar
是所需的。
using System;
using MySql.Data.MySqlClient;
public class Example
{
static void Main()
{
string cs = @"server=localhost;userid=user12;
password=34klq*;database=mydb";
MySqlConnection conn = null;
MySqlDataReader rdr = null;
try
{
conn = new MySqlConnection(cs);
conn.Open();
string stm = "SELECT * FROM Authors";
MySqlCommand cmd = new MySqlCommand(stm, conn);
int sum = (int)cmd.ExecuteScalar();
Console.WriteLine(sum);
} catch (MySqlException ex)
{
Console.WriteLine("Error: {0}", ex.ToString());
} finally
{
if (conn != null)
{
conn.Close();
}
}
}
}