【问题标题】:Adding Access database to C# dataGridView (using only code)将 Access 数据库添加到 C# dataGridView(仅使用代码)
【发布时间】:2012-05-06 04:50:38
【问题描述】:

我在一个表单上有 2 个 dataGridView,当我运行应用程序时,什么也没有显示。我相信在代码中添加dataGridView信息,如下所示,我不需要使用Visual Studio的“服务器资源管理器”添加数据库。那将是多余的和/或更改 dataGridView 的填充结果,对吗?我的代码中是否缺少某些内容?

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.OleDb;

namespace WindowsFormsApplication1
{
  public partial class Form1 : Form
  {
    public Form1()
    {
      InitializeComponent();
    }

    private void Form1_Load(object sender, EventArgs e)
    {
      DataSet ds = new DataSet();
      OleDbDataAdapter daOrders = new OleDbDataAdapter();
      OleDbDataAdapter daReceived = new OleDbDataAdapter();
      OleDbConnection vcon = new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;data source=C:\Query Form\Database.accdb");    

      OleDbCommand slctOrders = new OleDbCommand("SELECT * FROM script_Orders ORDER BY script");
      daOrders.SelectCommand = slctOrders;
      daOrders.Fill(ds, "tblOrders");

      OleDbCommand slctReceived = new OleDbCommand("SELECT * FROM script_Received");
      daOrders.SelectCommand = slctReceived;
      daOrders.Fill(ds, "tblReceived");

      dgOrders.DataSource = ds.Tables ["tblOrders"];
      dgReceived.DataSource = ds.Tables ["tblReceived"];
    }
  }
}

【问题讨论】:

    标签: c# ms-access datagridview dataset


    【解决方案1】:

    尝试将连接传递给数据适配器...

    OleDbCommand slctOrders = new OleDbCommand("SELECT * FROM script_Orders ORDER BY script", vcon);
    

    我不确定这是否就是您所缺少的(您可能还需要打开连接,vcon.Open()),但连接对象和适配器之间必须有一些链接。

    【讨论】:

      猜你喜欢
      • 2016-02-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-04-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多