我只想从.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/