88 lines
2.7 KiB
C#
88 lines
2.7 KiB
C#
using System;
|
||
using System.Data;
|
||
using System.Data.OleDb;
|
||
|
||
using Bentley.Internal.MstnPlatformNET;
|
||
|
||
namespace GeologyToolkit
|
||
{
|
||
internal class MdbHelper
|
||
{
|
||
/// <summary>
|
||
/// 构建函数
|
||
/// </summary>
|
||
/// <param name="fileName">MDB文件(含完整路徑)</param>
|
||
public MdbHelper(string fileName)
|
||
{
|
||
this.fileName = fileName;
|
||
connectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + fileName;
|
||
}
|
||
|
||
private readonly string connectionString;
|
||
private readonly string fileName;
|
||
private OleDbConnection odcConnection;
|
||
|
||
/// <summary>
|
||
/// 断开连接(关闭据库文件)
|
||
/// </summary>
|
||
public void Close()
|
||
{
|
||
odcConnection.Close();
|
||
}
|
||
|
||
/// <summary>
|
||
/// 根据sql命令返回一个DataSet
|
||
/// </summary>
|
||
/// <param name="sql">sql命令</param>
|
||
/// <returns>以DataTable形式返回数据</returns>
|
||
public DataSet GetDataSet(string sql)
|
||
{
|
||
DataSet ds = new DataSet();
|
||
|
||
try
|
||
{
|
||
OleDbDataAdapter adapter = new OleDbDataAdapter(sql, odcConnection);
|
||
adapter.Fill(ds);
|
||
}
|
||
catch (Exception)
|
||
{
|
||
throw new Exception("sql语句: " + sql + " 执行失败!");
|
||
}
|
||
|
||
return ds;
|
||
}
|
||
//根据表名返回一个DataSet
|
||
public DataSet GetDataSetByTableName(string tableName)
|
||
{
|
||
string sql = "select * from " + tableName;
|
||
return GetDataSet(sql);
|
||
}
|
||
//查询所有的表名
|
||
public DataTable GetTables()
|
||
{
|
||
DataTable dt = odcConnection.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, new object[] { null, null, null, "TABLE" });
|
||
return dt;
|
||
}
|
||
public void Open12()
|
||
{
|
||
//string connStr = @"Driver={Microsoft Access Driver (*.mdb)};DBQ=" + fileName;
|
||
string connectionString = $"Provider=Microsoft.ACE.OLEDB.12.0;Data Source={fileName};Persist Security Info=False;";
|
||
using (OleDbConnection connection = new OleDbConnection(connectionString))
|
||
{
|
||
connection.Open();
|
||
// Your code to interact with the database
|
||
}
|
||
}
|
||
|
||
/// <summary>
|
||
/// 建立连接(打开数据库文件)
|
||
/// </summary>
|
||
public void Open()
|
||
{
|
||
// 建立连接
|
||
odcConnection = new OleDbConnection(connectionString);
|
||
// 打开连接
|
||
odcConnection.Open();
|
||
}
|
||
}
|
||
} |