【问题标题】:Putting the Information from a SQL Query into a DataGridView将 SQL 查询中的信息放入 DataGridView
【发布时间】:2014-03-01 23:18:35
【问题描述】:

显示此 SQL 语句结果的最佳方式是什么:

select "WorkOrder"."WorkOrderID", "Customer"."FirstName", "Vehicles"."Model", "WorkOrder"."State" 
from "WorkOrder", "Customer", "Vehicles"
WHERE "WorkOrder"."VIN" = "Vehicles"."VIN" 
  AND "Vehicles"."CustomerID" = "Customer"."CustomerID"
  AND "WorkOrder"."State" = 'In Progress';

我在 Visual Studio 2010 中使用 C# WinForms。我似乎不太明白如何将它放入 DataGridView 或类似的东西中。有什么办法可以做或欺骗它进入 DataGridView?

【问题讨论】:

  • 您可以在DataTable 中使用它并将其分配给DataGridView.DataSource 属性。不要记得将AutoGenerateColumns 分配给true。查看文档中的示例 msdn.microsoft.com/tr-tr/library/…
  • 我将如何制作其中之一?

标签: c# sql oracle datagridview


【解决方案1】:

最简单的方法是放入 DataTable 并将其分配给 .DataSource 之类的属性;

string command = @"select "WorkOrder"."WorkOrderID", "Customer"."FirstName", "Vehicles"."Model", "WorkOrder"."State"  from "WorkOrder", "Customer", "Vehicles" WHERE "WorkOrder"."VIN" = "Vehicles"."VIN" AND "Vehicles"."CustomerID" = "Customer"."CustomerID" AND "WorkOrder"."State" = 'In Progress'";

using(SqlConnection conn = new SqlConnection(connectionString))
using(SqlCommand command = conn.CreateCommand())
{
    command.Connection = conn;
    using(SqlDataAdapter adapter = new SqlDataAdapter())
    {
        adapter.SelectCommand = command;
        DataTable table = new DataTable();
        adapter.Fill(table);
        DataGridview1.DataSource = table;
        DataGridview1.AutoGenerateColumns = true;
    }
}

【讨论】:

  • 遗憾的是,这在我的环境中不起作用。 @ 符号不想工作。
  • 另外,字符串命令似乎干扰了 SqlCommand 命令。
猜你喜欢
  • 2013-02-07
  • 2020-07-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多