我只想从.accdb文件中的表中检索数据。
这是我的完整申请表:

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

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

        private void button1_Click(object sender, EventArgs e)
        {

            OleDbConnection myConn = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:/Microland.accdb;Persist Security Info=False;");
            myConn.Open();
            OleDbCommand myQuery = new OleDbCommand("select CustID from Customers WHERE CustID = 1;", myConn);
            OleDbDataReader myReader = myQuery.ExecuteReader();
             if(myReader.HasRows)
             {
                myReader.Read();
                label1.Text = myReader.ToString();
             }
            myConn.Close();

        }
    }
}

我想我在顶部缺少了一些用法,或者我的代码有点损坏,因为我单击label1文本更改为system.data.oledb.oledbdatareader的按钮1。
另外,这是连接到访问数据库(.accdb)的正确方法吗?我需要执行this walkthrough才能使其工作,还是这与我需要执行的操作无关?
谢谢你的消息!非常感谢

最佳答案

当您调用myReader.ToString()时,它返回一个表示当前对象的字符串。所以“system.data.oledb.oledbdatareader”就是这样。
看起来你希望标签等于读取的数据。我并不特别熟悉这个读者,但对于文档我并不熟悉。
您需要调用其中一个Get*()函数。

关于c# - 简单的C#连接到.accdb文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33642446/

10-11 11:18