入门者使用……高手绕行 C#操作Access数据库的基础知识 通过ADO.NET的OleDb相关类来操作Access 主要知识点如下: using System.Data.OleDb; using System.Data; 连接字符串: String connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=product.mdb"; 建立连接: OleDbConnection connection = new OleDbConnection(connectionString); 使用OleDbCommand类来执行Sql语句: OleDbCommand cmd = new OleDbCommand(sql, connection); connection.Open(); cmd.ExecuteNonQuery(); C#操作Access数据库的基础知识2. 取得Access自增标识字段在插入数据后的id值 cmd.CommandText = @"select @@identity"; int value = Int32.Parse(cmd.ExecuteScalar().ToString()); return value; C#操作Access数据库的基础知识3. 执行事务 需要用到OleDbTransaction,关键语句如下: OleDbConnection connection = new OleDbConnection(connectionString); OleDbCommand cmd = new OleDbCommand(); OleDbTransaction transaction = null; cmd.Connection = connection; connection.Open(); transaction = connection.BeginTransaction(); cmd.Transaction = transaction; cmd.CommandText=sql1; cmd.ExecuteNonQuery(); cmd.CommandText=sql2; cmd.ExecuteNonQuery(); transaction.Commit(); C#操作Access数据库的基础知识4. 执行查询,返回DataSet OleDbConnection connection = new OleDbConnection(connectionString); DataSet ds = new DataSet(); connection.Open(); OleDbDataAdapter da = new OleDbDataAdapter(sql, connection); da.Fill(ds,"ds"); 分页查询 分页查询使用OleDbDataReader来读取数据,并将结果写到一个DataSet中返回。 以上内容封装为三个可重用的类:AccessDBUtil,AccessPageUtil,Page C#操作Access之创建mdb库浅析 C#操作Access之创建mdb库是如何实现的呢?首先我们来看看基本的知识:本文C#操作Access数据库的基础知识,并提供一个相关的实例。C#的ADO.NET还不能通过编程方式创建全新的ACCESS(MDB)数据库,所以还只能使用ADOX这个来自COM的链接库来操作。 C#操作Access主要知识点如下: using System.Data.OleDb; using System.Data; C#操作Access连接字符串: String connectionString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=product.mdb"; C#操作Access建立连接: OleDbConnection connection = new OleDbConnection(connectionString); C#操作Access使用OleDbCommand类来执行Sql语句: OleDbCommand cmd = new OleDbCommand(sql, connection); connection.Open(); cmd.ExecuteNonQuery(); C#操作Access之创建mdb库,例程如下: 需要注意的是:参数mdbPath是mdb的完整路径(不包含表的名称)。 C#操作Access之创建mdb库实例:D:\test.mdb //创建mdb public static bool CreateMDBDataBase(string mdbPath) { try { ADOX.CatalogClass cat = new ADOX.CatalogClass(); cat.Create( "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + mdbPath + ";"); cat = null; return true; } //C#操作Access之创建mdb库 catch { return false; } } C#操作Access之创建mdb库的基本内容就向你介绍到这里,希望对你了解和学习C#操作Access之创建mdb库有所帮助。 C#操作Access之创建表浅析 C#操作Access之创建表是如何实现的呢?首先我们来看看基本的知识:本文C#操作Access数据库的基础知识,并提供一个相关的实例。C#的ADO.NET还不能通过编程方式创建全新的ACCESS(MDB)数据库,所以还只能使用ADOX这个来自COM的链接库来操作。 C#操作Access主要知识点如下: using System.Data.OleDb; using System.Data; C#操作Access连接字符串: String connectionString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=product.mdb"; C#操作Access建立连接: OleDbConnection connection = new OleDbConnection(connectionString); C#操作Access使用OleDbCommand类来执行Sql语句: OleDbCommand cmd = new OleDbCommand(sql, connection); connection.Open(); cmd.ExecuteNonQuery(); C#操作Access之创建表,例程如下: 通常一个mdb的可以包含n个表。下面的程序主要是创建一个table。 //新建mdb的表,C#操作Access之创建表 //mdbHead是一个ArrayList,存储的是table表中的具体列名。 public static bool CreateMDBTable( string mdbPath,string tableName, ArrayList mdbHead) { try { ADOX.CatalogClass cat = new ADOX.CatalogClass(); string sAccessConnection = @"Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" + mdbPath; ADODB.Connection cn = new ADODB.Connection(); cn.Open(sAccessConnection, null, null, -1); cat.ActiveConnection = cn; //新建一个表,C#操作Access之创建表 ADOX.TableClass tbl = new ADOX.TableClass(); tbl.ParentCatalog = cat; tbl.Name = tableName; int size = mdbHead.Count; for (int i = 0; i < size; i++) { //增加一个文本字段 ADOX.ColumnClass col2 = new ADOX.ColumnClass(); col2.ParentCatalog = cat; col2.Name = mdbHead[i].ToString();//列的名称 col2.Properties["Jet OLEDB:Allow Zero Length"].Value = false; tbl.Columns.Append(col2, ADOX.DataTypeEnum.adVarWChar, 500); } cat.Tables.Append(tbl); //这句把表加入数据库(非常重要) ,C#操作Access之创建表 tbl = null; cat = null; cn.Close(); return true; } catch { return false; } } C#操作Access之创建表的基本内容就向你介绍到这里,希望对你了解和学习C#操作Access之创建表有所帮助。 C#操作Access之读取mdb浅析 C#操作Access之读取mdb是如何实现的呢?首先我们来看看基本的知识:本文C#操作Access数据库的基础知识,并提供一个相关的实例。C#的ADO.NET还不能通过编程方式创建全新的ACCESS(MDB)数据库,所以还只能使用ADOX这个来自COM的链接库来操作。 C#操作Access主要知识点如下: using System.Data.OleDb; using System.Data; C#操作Access连接字符串: String connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=product.mdb"; C#操作Access建立连接: OleDbConnection connection = new OleDbConnection(connectionString); C#操作Access使用OleDbCommand类来执行Sql语句: OleDbCommand cmd = new OleDbCommand(sql, connection); connection.Open(); cmd.ExecuteNonQuery(); C#操作Access之读取mdb实例如下: 本例返回的是一个DataTable,如需其他格式可以自行转换。 // 读取mdb数据 public static DataTable ReadAllData(string tableName, string mdbPath,ref bool success) { DataTable dt = new DataTable(); try { DataRow dr; //1、建立连接 C#操作Access之读取mdb string strConn = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + mdbPath + ";Jet OLEDB:Database Password=haoren"; OleDbConnection odcConnection = new OleDbConnection(strConn); //2、打开连接 C#操作Access之读取mdb odcConnection.Open(); //建立SQL查询 OleDbCommand odCommand = odcConnection.CreateCommand(); //3、输入查询语句 C#操作Access之读取mdb odCommand.CommandText = "select * from " + tableName; //建立读取 OleDbDataReader odrReader = odCommand.ExecuteReader(); //查询并显示数据 int size = odrReader.FieldCount; for (int i = 0; i < size; i++) { DataColumn dc; dc = new DataColumn(odrReader.GetName(i)); dt.Columns.Add(dc); } while (odrReader.Read()) { dr = dt.NewRow(); for (int i = 0; i < size; i++) { dr[odrReader.GetName(i)] = odrReader[odrReader.GetName(i)].ToString(); } dt.Rows.Add(dr); } //关闭连接 C#操作Access之读取mdb odrReader.Close(); odcConnection.Close(); success = true; return dt; } catch { success = false; return dt; } } C#操作Access之读取mdb的基本内容就向你介绍到这里,希望对你了解和学习C#操作Access之读取mdb有所帮助。 C#操作Access之按列读取mdb浅析 C#操作Access之按列读取mdb是如何实现的呢?首先我们来看看基本的知识:本文C#操作Access数据库的基础知识,并提供一个相关的实例。C#的ADO.NET还不能通过编程方式创建全新的ACCESS(MDB)数据库,所以还只能使用ADOX这个来自COM的链接库来操作。 C#操作Access主要知识点如下: using System.Data.OleDb; using System.Data; C#操作Access连接字符串: String connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=product.mdb"; C#操作Access建立连接: OleDbConnection connection = new OleDbConnection(connectionString); C#操作Access使用OleDbCommand类来执行Sql语句: OleDbCommand cmd = new OleDbCommand(sql, connection); connection.Open(); cmd.ExecuteNonQuery(); C#操作Access之按列读取mdb内容实例如下: columns数组存储的是你要查询的列名称(必须确保mdb表中存在你要的列) // 读取mdb数据 public static DataTable ReadDataByColumns(string mdbPaht, string tableName, string[] columns, ref bool success) { DataTable dt = new DataTable(); try { DataRow dr; //1、建立连接 C#操作Access之按列读取mdb string strConn = @"Provider=Microsoft. Jet.OLEDB.4.0;Data Source=" + mdbPath + ";Jet OLEDB:Database Password=haoren"; OleDbConnection odcConnection = new OleDbConnection(strConn); //2、打开连接 C#操作Access之按列读取mdb odcConnection.Open(); //建立SQL查询 OleDbCommand odCommand = odcConnection.CreateCommand(); //3、输入查询语句 string strColumn = ""; for (int i = 0; i < columns.Length; i++) { strColumn += columns[i].ToString() + ","; } strColumn = strColumn.TrimEnd(','); odCommand.CommandText = "select "+strColumn+ " from " + tableName; //建立读取 C#操作Access之按列读取mdb OleDbDataReader odrReader = odCommand.ExecuteReader(); //查询并显示数据 C#操作Access之按列读取mdb int size = odrReader.FieldCount; for (int i = 0; i < size; i++) { DataColumn dc; dc = new DataColumn(odrReader.GetName(i)); dt.Columns.Add(dc); } while (odrReader.Read()) { dr = dt.NewRow(); for (int i = 0; i < size; i++) { dr[odrReader.GetName(i)] = odrReader[ odrReader.GetName(i)].ToString(); } dt.Rows.Add(dr); } //关闭连接 C#操作Access之按列读取mdb odrReader.Close(); odcConnection.Close(); success = true; return dt; } catch { success = false; return dt; } } C#操作Access之按列读取mdb的基本内容就向你介绍到这里,希望对你了解和学习C#操作Access之按列读取mdb有所帮助。 C#操作Access实例解析 C#操作Access实例是怎么实现的呢?让我们来看看具体的代码: using System; using System.Data; using System.Configuration; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using System.Data.OleDb; /// <summary> /// DataAccess 的摘要说明 C#操作Access实例解析 /// </summary> public class DataAccess { protected static OleDbConnection conn = new OleDbConnection(); protected static OleDbCommand comm = new OleDbCommand(); public DataAccess() { //init C#操作Access实例解析 } private static void openConnection() { if (conn.State == ConnectionState.Closed) { conn.ConnectionString = @"Provider=Microsoft.Jet.OleDb.4.0; Data Source="+ConfigurationManager.AppSettings["myconn"]; //web.config文件里设定。 comm.Connection = conn; try { conn.Open(); } catch (Exception e) { throw new Exception(e.Message); } } }//打开数据库 C#操作Access实例解析 private static void closeConnection() { if (conn.State == ConnectionState.Open) { conn.Close(); conn.Dispose(); comm.Dispose(); } }//关闭数据库 C#操作Access实例解析 public static void excuteSql(string sqlstr) { try { openConnection(); comm.CommandType = CommandType.Text; comm.CommandText = sqlstr; comm.ExecuteNonQuery(); } catch (Exception e) { throw new Exception(e.Message); } finally { closeConnection(); } }//执行sql语句 C#操作Access实例解析 public static OleDbDataReader dataReader(string sqlstr) { OleDbDataReader dr = null; try { openConnection(); comm.CommandText = sqlstr; comm.CommandType = CommandType.Text; dr = comm.ExecuteReader(CommandBehavior.CloseConnection); } catch { try { dr.Close(); closeConnection(); } catch { } } return dr; } //返回指定sql语句的OleDbDataReader对象,使用时请注意关闭这个对象。 public static void dataReader(string sqlstr, ref OleDbDataReader dr) { try { openConnection(); comm.CommandText = sqlstr; comm.CommandType = CommandType.Text; dr=comm.ExecuteReader(CommandBehavior.CloseConnection); } catch { try { if (dr != null && !dr.IsClosed) dr.Close(); } //C#操作Access实例解析 catch { } finally { closeConnection(); } } } //返回指定sql语句的OleDbDataReader对象,使用时请注意关闭 public static DataSet dataSet(string sqlstr) { DataSet ds = new DataSet(); OleDbDataAdapter da = new OleDbDataAdapter(); try { openConnection(); comm.CommandType = CommandType.Text; comm.CommandText = sqlstr; da.SelectCommand = comm; da.Fill(ds); } catch (Exception e) { throw new Exception(e.Message); } finally { closeConnection(); } return ds; }//返回指定sql语句的dataset C#操作Access实例解析 public static void dataSet( string sqlstr, ref DataSet ds) { OleDbDataAdapter da = new OleDbDataAdapter(); try { openConnection(); comm.CommandType = CommandType.Text; comm.CommandText = sqlstr; da.SelectCommand = comm; da.Fill(ds); } catch (Exception e) { throw new Exception(e.Message); } finally { closeConnection(); } }//返回指定sql语句的dataset C#操作Access实例解析 public static DataTable dataTable(string sqlstr) { DataTable dt = new DataTable(); OleDbDataAdapter da = new OleDbDataAdapter(); try { openConnection(); comm.CommandType = CommandType.Text; comm.CommandText = sqlstr; da.SelectCommand = comm; da.Fill(dt); } catch (Exception e) { throw new Exception(e.Message); } finally { closeConnection(); } return dt; }//返回指定sql语句的datatable public static void dataTable( string sqlstr, ref DataTable dt) { OleDbDataAdapter da = new OleDbDataAdapter(); try { openConnection(); comm.CommandType = CommandType.Text; comm.CommandText = sqlstr; da.SelectCommand = comm; da.Fill(dt); } catch (Exception e) { throw new Exception(e.Message); } finally { closeConnection(); } }//返回指定sql语句的datatable C#操作Access实例解析 public static DataView dataView(string sqlstr) { OleDbDataAdapter da = new OleDbDataAdapter(); DataView dv = new DataView(); DataSet ds = new DataSet(); try { openConnection(); comm.CommandType = CommandType.Text; comm.CommandText = sqlstr; da.SelectCommand = comm; da.Fill(ds); dv = ds.Tables[0].DefaultView; } catch (Exception e) { throw new Exception(e.Message); } finally { closeConnection(); } return dv; } //返回指定sql语句的dataview C#操作Access实例解析 } C#操作Access实例解析的基本内容就向你介绍到这里,希望对你了解和学习C#操作Access有所帮助。 Loading... 入门者使用……高手绕行 <h3>C#操作Access数据库的基础知识</h3> 通过ADO.NET的OleDb相关类来操作Access 主要知识点如下:<!--more--> <pre class="lang:c# decode:true ">using System.Data.OleDb; using System.Data;</pre> 连接字符串: <pre class="lang:c# decode:true">String connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=product.mdb";</pre> 建立连接: <pre class="lang:c# decode:true ">OleDbConnection connection = new OleDbConnection(connectionString);</pre> 使用OleDbCommand类来执行Sql语句: <pre class="lang:c# decode:true">OleDbCommand cmd = new OleDbCommand(sql, connection); connection.Open(); cmd.ExecuteNonQuery();</pre> C#操作Access数据库的基础知识2. 取得Access自增标识字段在插入数据后的id值 <pre class="lang:c# decode:true">cmd.CommandText = @"select @@identity"; int value = Int32.Parse(cmd.ExecuteScalar().ToString()); return value;</pre> C#操作Access数据库的基础知识3. 执行事务 需要用到OleDbTransaction,关键语句如下: <pre class="lang:c# decode:true">OleDbConnection connection = new OleDbConnection(connectionString); OleDbCommand cmd = new OleDbCommand(); OleDbTransaction transaction = null; cmd.Connection = connection; connection.Open(); transaction = connection.BeginTransaction(); cmd.Transaction = transaction; cmd.CommandText=sql1; cmd.ExecuteNonQuery(); cmd.CommandText=sql2; cmd.ExecuteNonQuery(); transaction.Commit();</pre> C#操作Access数据库的基础知识4. 执行查询,返回DataSet <pre class="lang:c# decode:true">OleDbConnection connection = new OleDbConnection(connectionString); DataSet ds = new DataSet(); connection.Open(); OleDbDataAdapter da = new OleDbDataAdapter(sql, connection); da.Fill(ds,"ds");</pre> 分页查询 分页查询使用OleDbDataReader来读取数据,并将结果写到一个DataSet中返回。 以上内容封装为三个可重用的类:AccessDBUtil,AccessPageUtil,Page <h3>C#操作Access之创建mdb库浅析</h3> C#操作Access之创建mdb库是如何实现的呢?首先我们来看看基本的知识:本文C#操作Access数据库的基础知识,并提供一个相关的实例。C#的ADO.NET还不能通过编程方式创建全新的ACCESS(MDB)数据库,所以还只能使用ADOX这个来自COM的链接库来操作。 C#操作Access主要知识点如下: <pre class="lang:default decode:true ">using System.Data.OleDb; using System.Data;</pre> C#操作Access连接字符串: <pre class="lang:default decode:true ">String connectionString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=product.mdb";</pre> C#操作Access建立连接: <pre class="lang:default decode:true ">OleDbConnection connection = new OleDbConnection(connectionString);</pre> C#操作Access使用OleDbCommand类来执行Sql语句: <pre class="lang:default decode:true">OleDbCommand cmd = new OleDbCommand(sql, connection); connection.Open(); cmd.ExecuteNonQuery();</pre> C#操作Access之创建mdb库,例程如下: 需要注意的是:参数mdbPath是mdb的完整路径(不包含表的名称)。 C#操作Access之创建mdb库实例:D:\test.mdb <pre class="lang:default decode:true ">//创建mdb public static bool CreateMDBDataBase(string mdbPath) { try { ADOX.CatalogClass cat = new ADOX.CatalogClass(); cat.Create( "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + mdbPath + ";"); cat = null; return true; } //C#操作Access之创建mdb库 catch { return false; } }</pre> C#操作Access之创建mdb库的基本内容就向你介绍到这里,希望对你了解和学习C#操作Access之创建mdb库有所帮助。 <h3>C#操作Access之创建表浅析</h3> C#操作Access之创建表是如何实现的呢?首先我们来看看基本的知识:本文C#操作Access数据库的基础知识,并提供一个相关的实例。C#的ADO.NET还不能通过编程方式创建全新的ACCESS(MDB)数据库,所以还只能使用ADOX这个来自COM的链接库来操作。 C#操作Access主要知识点如下: <pre class="lang:default decode:true ">using System.Data.OleDb; using System.Data;</pre> C#操作Access连接字符串: <pre class="lang:default decode:true ">String connectionString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=product.mdb";</pre> C#操作Access建立连接: <pre class="lang:default decode:true ">OleDbConnection connection = new OleDbConnection(connectionString);</pre> C#操作Access使用OleDbCommand类来执行Sql语句: <pre class="lang:default decode:true">OleDbCommand cmd = new OleDbCommand(sql, connection); connection.Open(); cmd.ExecuteNonQuery();</pre> C#操作Access之创建表,例程如下: 通常一个mdb的可以包含n个表。下面的程序主要是创建一个table。 <pre class="lang:default decode:true ">//新建mdb的表,C#操作Access之创建表 //mdbHead是一个ArrayList,存储的是table表中的具体列名。 public static bool CreateMDBTable( string mdbPath,string tableName, ArrayList mdbHead) { try { ADOX.CatalogClass cat = new ADOX.CatalogClass(); string sAccessConnection = @"Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" + mdbPath; ADODB.Connection cn = new ADODB.Connection(); cn.Open(sAccessConnection, null, null, -1); cat.ActiveConnection = cn; //新建一个表,C#操作Access之创建表 ADOX.TableClass tbl = new ADOX.TableClass(); tbl.ParentCatalog = cat; tbl.Name = tableName; int size = mdbHead.Count; for (int i = 0; i < size; i++) { //增加一个文本字段 ADOX.ColumnClass col2 = new ADOX.ColumnClass(); col2.ParentCatalog = cat; col2.Name = mdbHead[i].ToString();//列的名称 col2.Properties["Jet OLEDB:Allow Zero Length"].Value = false; tbl.Columns.Append(col2, ADOX.DataTypeEnum.adVarWChar, 500); } cat.Tables.Append(tbl); //这句把表加入数据库(非常重要) ,C#操作Access之创建表 tbl = null; cat = null; cn.Close(); return true; } catch { return false; } }</pre> C#操作Access之创建表的基本内容就向你介绍到这里,希望对你了解和学习C#操作Access之创建表有所帮助。 <h3>C#操作Access之读取mdb浅析</h3> C#操作Access之读取mdb是如何实现的呢?首先我们来看看基本的知识:本文C#操作Access数据库的基础知识,并提供一个相关的实例。C#的ADO.NET还不能通过编程方式创建全新的ACCESS(MDB)数据库,所以还只能使用ADOX这个来自COM的链接库来操作。 C#操作Access主要知识点如下: <pre class="lang:default decode:true ">using System.Data.OleDb; using System.Data;</pre> C#操作Access连接字符串: <pre class="lang:default decode:true ">String connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=product.mdb";</pre> C#操作Access建立连接: <pre class="lang:default decode:true ">OleDbConnection connection = new OleDbConnection(connectionString);</pre> C#操作Access使用OleDbCommand类来执行Sql语句: <pre class="lang:default decode:true">OleDbCommand cmd = new OleDbCommand(sql, connection); connection.Open(); cmd.ExecuteNonQuery();</pre> C#操作Access之读取mdb实例如下: 本例返回的是一个DataTable,如需其他格式可以自行转换。 <pre class="lang:default decode:true">// 读取mdb数据 public static DataTable ReadAllData(string tableName, string mdbPath,ref bool success) { DataTable dt = new DataTable(); try { DataRow dr; //1、建立连接 C#操作Access之读取mdb string strConn = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + mdbPath + ";Jet OLEDB:Database Password=haoren"; OleDbConnection odcConnection = new OleDbConnection(strConn); //2、打开连接 C#操作Access之读取mdb odcConnection.Open(); //建立SQL查询 OleDbCommand odCommand = odcConnection.CreateCommand(); //3、输入查询语句 C#操作Access之读取mdb odCommand.CommandText = "select * from " + tableName; //建立读取 OleDbDataReader odrReader = odCommand.ExecuteReader(); //查询并显示数据 int size = odrReader.FieldCount; for (int i = 0; i < size; i++) { DataColumn dc; dc = new DataColumn(odrReader.GetName(i)); dt.Columns.Add(dc); } while (odrReader.Read()) { dr = dt.NewRow(); for (int i = 0; i < size; i++) { dr[odrReader.GetName(i)] = odrReader[odrReader.GetName(i)].ToString(); } dt.Rows.Add(dr); } //关闭连接 C#操作Access之读取mdb odrReader.Close(); odcConnection.Close(); success = true; return dt; } catch { success = false; return dt; } }</pre> C#操作Access之读取mdb的基本内容就向你介绍到这里,希望对你了解和学习C#操作Access之读取mdb有所帮助。 <h3>C#操作Access之按列读取mdb浅析</h3> C#操作Access之按列读取mdb是如何实现的呢?首先我们来看看基本的知识:本文C#操作Access数据库的基础知识,并提供一个相关的实例。C#的ADO.NET还不能通过编程方式创建全新的ACCESS(MDB)数据库,所以还只能使用ADOX这个来自COM的链接库来操作。 C#操作Access主要知识点如下: <pre class="lang:default decode:true ">using System.Data.OleDb; using System.Data;</pre> C#操作Access连接字符串: <pre class="lang:default decode:true ">String connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=product.mdb";</pre> C#操作Access建立连接: <pre class="lang:default decode:true ">OleDbConnection connection = new OleDbConnection(connectionString);</pre> C#操作Access使用OleDbCommand类来执行Sql语句: <pre class="lang:default decode:true ">OleDbCommand cmd = new OleDbCommand(sql, connection); connection.Open(); cmd.ExecuteNonQuery();</pre> C#操作Access之按列读取mdb内容实例如下: columns数组存储的是你要查询的列名称(必须确保mdb表中存在你要的列) <pre class="lang:default decode:true ">// 读取mdb数据 public static DataTable ReadDataByColumns(string mdbPaht, string tableName, string[] columns, ref bool success) { DataTable dt = new DataTable(); try { DataRow dr; //1、建立连接 C#操作Access之按列读取mdb string strConn = @"Provider=Microsoft. Jet.OLEDB.4.0;Data Source=" + mdbPath + ";Jet OLEDB:Database Password=haoren"; OleDbConnection odcConnection = new OleDbConnection(strConn); //2、打开连接 C#操作Access之按列读取mdb odcConnection.Open(); //建立SQL查询 OleDbCommand odCommand = odcConnection.CreateCommand(); //3、输入查询语句 string strColumn = ""; for (int i = 0; i < columns.Length; i++) { strColumn += columns[i].ToString() + ","; } strColumn = strColumn.TrimEnd(','); odCommand.CommandText = "select "+strColumn+ " from " + tableName; //建立读取 C#操作Access之按列读取mdb OleDbDataReader odrReader = odCommand.ExecuteReader(); //查询并显示数据 C#操作Access之按列读取mdb int size = odrReader.FieldCount; for (int i = 0; i < size; i++) { DataColumn dc; dc = new DataColumn(odrReader.GetName(i)); dt.Columns.Add(dc); } while (odrReader.Read()) { dr = dt.NewRow(); for (int i = 0; i < size; i++) { dr[odrReader.GetName(i)] = odrReader[ odrReader.GetName(i)].ToString(); } dt.Rows.Add(dr); } //关闭连接 C#操作Access之按列读取mdb odrReader.Close(); odcConnection.Close(); success = true; return dt; } catch { success = false; return dt; } }</pre> C#操作Access之按列读取mdb的基本内容就向你介绍到这里,希望对你了解和学习C#操作Access之按列读取mdb有所帮助。 <h3>C#操作Access实例解析</h3> C#操作Access实例是怎么实现的呢?让我们来看看具体的代码: <pre class="lang:default decode:true">using System; using System.Data; using System.Configuration; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using System.Data.OleDb; /// <summary> /// DataAccess 的摘要说明 C#操作Access实例解析 /// </summary> public class DataAccess { protected static OleDbConnection conn = new OleDbConnection(); protected static OleDbCommand comm = new OleDbCommand(); public DataAccess() { //init C#操作Access实例解析 } private static void openConnection() { if (conn.State == ConnectionState.Closed) { conn.ConnectionString = @"Provider=Microsoft.Jet.OleDb.4.0; Data Source="+ConfigurationManager.AppSettings["myconn"]; //web.config文件里设定。 comm.Connection = conn; try { conn.Open(); } catch (Exception e) { throw new Exception(e.Message); } } }//打开数据库 C#操作Access实例解析 private static void closeConnection() { if (conn.State == ConnectionState.Open) { conn.Close(); conn.Dispose(); comm.Dispose(); } }//关闭数据库 C#操作Access实例解析 public static void excuteSql(string sqlstr) { try { openConnection(); comm.CommandType = CommandType.Text; comm.CommandText = sqlstr; comm.ExecuteNonQuery(); } catch (Exception e) { throw new Exception(e.Message); } finally { closeConnection(); } }//执行sql语句 C#操作Access实例解析 public static OleDbDataReader dataReader(string sqlstr) { OleDbDataReader dr = null; try { openConnection(); comm.CommandText = sqlstr; comm.CommandType = CommandType.Text; dr = comm.ExecuteReader(CommandBehavior.CloseConnection); } catch { try { dr.Close(); closeConnection(); } catch { } } return dr; } //返回指定sql语句的OleDbDataReader对象,使用时请注意关闭这个对象。 public static void dataReader(string sqlstr, ref OleDbDataReader dr) { try { openConnection(); comm.CommandText = sqlstr; comm.CommandType = CommandType.Text; dr=comm.ExecuteReader(CommandBehavior.CloseConnection); } catch { try { if (dr != null && !dr.IsClosed) dr.Close(); } //C#操作Access实例解析 catch { } finally { closeConnection(); } } } //返回指定sql语句的OleDbDataReader对象,使用时请注意关闭 public static DataSet dataSet(string sqlstr) { DataSet ds = new DataSet(); OleDbDataAdapter da = new OleDbDataAdapter(); try { openConnection(); comm.CommandType = CommandType.Text; comm.CommandText = sqlstr; da.SelectCommand = comm; da.Fill(ds); } catch (Exception e) { throw new Exception(e.Message); } finally { closeConnection(); } return ds; }//返回指定sql语句的dataset C#操作Access实例解析 public static void dataSet( string sqlstr, ref DataSet ds) { OleDbDataAdapter da = new OleDbDataAdapter(); try { openConnection(); comm.CommandType = CommandType.Text; comm.CommandText = sqlstr; da.SelectCommand = comm; da.Fill(ds); } catch (Exception e) { throw new Exception(e.Message); } finally { closeConnection(); } }//返回指定sql语句的dataset C#操作Access实例解析 public static DataTable dataTable(string sqlstr) { DataTable dt = new DataTable(); OleDbDataAdapter da = new OleDbDataAdapter(); try { openConnection(); comm.CommandType = CommandType.Text; comm.CommandText = sqlstr; da.SelectCommand = comm; da.Fill(dt); } catch (Exception e) { throw new Exception(e.Message); } finally { closeConnection(); } return dt; }//返回指定sql语句的datatable public static void dataTable( string sqlstr, ref DataTable dt) { OleDbDataAdapter da = new OleDbDataAdapter(); try { openConnection(); comm.CommandType = CommandType.Text; comm.CommandText = sqlstr; da.SelectCommand = comm; da.Fill(dt); } catch (Exception e) { throw new Exception(e.Message); } finally { closeConnection(); } }//返回指定sql语句的datatable C#操作Access实例解析 public static DataView dataView(string sqlstr) { OleDbDataAdapter da = new OleDbDataAdapter(); DataView dv = new DataView(); DataSet ds = new DataSet(); try { openConnection(); comm.CommandType = CommandType.Text; comm.CommandText = sqlstr; da.SelectCommand = comm; da.Fill(ds); dv = ds.Tables[0].DefaultView; } catch (Exception e) { throw new Exception(e.Message); } finally { closeConnection(); } return dv; } //返回指定sql语句的dataview C#操作Access实例解析 }</pre> C#操作Access实例解析的基本内容就向你介绍到这里,希望对你了解和学习C#操作Access有所帮助。 © 允许规范转载 赞 如果觉得我的文章对你有用,请随意赞赏