2014-01-09 39 views
-3

所以我在玩一些SQL和C#。我有一个.cs文件,其中我有一个方法,我将使用select从我的数据库中获取一些信息。存储查询结果的最佳方法

我认为我使用的语法是正确的(如果不是,请让我知道)。但我想知道哪个是存储结果的最佳方式。有没有办法将结果存储在数据集中?如果不是,哪个是存储信息的最佳类型?

所以这里去我的代码:

SqlConnection con = new SqlConnection(); 
     con.ConnectionString = (@"Data Source=XXXXXXXXXX.com;Initial Catalog=XXXXXXXXXX;User ID=XXXXXXXX;Password=XXXXXXXX"); 

     SqlCommand cmd = new SqlCommand(); 
     cmd.CommandText = "SELECT * FROM HISTHDR"; 
     cmd.CommandType = CommandType.Text; 

     cmd.Connection = con; 

     con.Open(); 
     int result = cmd.ExecuteNonQuery(); 
     con.Close(); 

     return true; 

提前感谢!

+1

什么结果?你正在有效地存储以整数返回的行数量..不确定我在这里看到问题吗? –

+1

我想你可能想要通过一些教程来运行,因为这并没有足够的意义才能够给出正确的回应 – Jonesopolis

+0

我离开了int因为我使用了一个count。但我不想计数,我想要我的表的实际行,以便我可以用它们来稍后将它们存储在csv文件中。 @Jonesy – apachecoq

回答

-1

您正在执行:

cmd.ExecuteNonQuery(); 

该命令是(顾名思义是针对非查询)意味着更新/删除等...

你想做的事:

using(DbDataReader rdr = cmd.ExecuteReader()) 
{ 
    while (rdr.Read()) 
    { 

     // ... get column data here ...// 
     string s = (string) rdr["name"]; 
    } 
}