gpt4 book ai didi

c# - 使用 C# 连接并读取 .MDB 项目

转载 作者:行者123 更新时间:2023-11-30 13:22:54 25 4
gpt4 key购买 nike

是否可以连接到本地 MDB 文件并从中提取一点信息?我在 .mbd 文件中有一个表,其中包含一点信息。我想将该记录输出到禁用的文本框中以供引用。我相信我可以打开数据库并运行查询,但不知道我需要从中读取什么。

谢谢

var myDataTable = new DataTable();
using (var conection = new OleDbConnection("Provider=Microsoft.JET.OLEDB.4.0;" + "data source=C:\\menus\\newmenus\\menu.mdb;Password=****"))
{
conection.Open();
var query = "Select siteid From n_user";
var adapter = new OleDbDataAdapter(query, conection);
OleDbCommandBuilder oleDbCommandBuilder = new OleDbCommandBuilder(adapter);
}

最佳答案

要简单地读取数据库表中的单个字段,您可以使用 OleDbDataReader可以遍历结果并返回所需的字段..

var myDataTable = new DataTable();
using (var conection = new OleDbConnection("Provider=Microsoft.JET.OLEDB.4.0;" + "data source=C:\\menus\\newmenus\\menu.mdb;Password=****"))
{
conection.Open();
var query = "Select siteid From n_user";
var command = new OleDbCommand(query, conection);
var reader = command.ExecuteReader();
while(reader.Read())
textBox1.Text = reader[0].ToString();

}

如果您只有一个记录和一个字段,那么更好的解决方案是方法 ExecuteScalar

     conection.Open();
// A query that returns just one record composed of just one field
var query = "Select siteid From n_user where userid=1";
var command = new OleDbCommand(query, conection);
int result = (int)command.ExecuteScalar(); // Supposing that siteid is an integer

也许我还应该提到,如果查询没有找到与 userid 的匹配项,ExecuteScalar 将返回 null,因此最好小心此处的转换

     object result = command.ExecuteScalar();
if( result != null)
int userID = (int)result;
.....

关于c# - 使用 C# 连接并读取 .MDB 项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16906535/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com