操作Access数据库
OleDbConnection用法
string strConn = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=testDB.accdb"; OleDbConnection conn = new OleDbConnection(strConn); conn.Open();//打开 //conn.Close();//关闭
//打开数据连接 public static OleDbConnection OpenConnection() { OleDbConnection conn = new OleDbConnection(strConn); try { conn.Open(); } catch(Exception ex) { Console.WriteLine("打开数据库异常:{0}",ex.Message); } return conn; }
OleDbCommand用法
//执行SQL语句,并返回受影响的行数 public static int ExecuteNonQuery(string strCmd) { int rows = 0; OleDbConnection conn = OpenConnection(); if(conn.State == System.Data.ConnectionState.Open) { try { OleDbCommand comm = new OleDbCommand(strCmd, conn); rows = comm.ExecuteNonQuery();//返回受影响的行数 } catch (Exception ex) { Console.WriteLine(ex.Message); } finally { conn.Close(); } } return rows; }
//执行SQL语句,并返回受影响的行数 //传递参数 public static int ExecuteNonQuery(string strCmd, OleDbParameter[] values) { int rows = 0; OleDbConnection conn = OpenConnection(); if(conn.State == System.Data.ConnectionState.Open) { try { OleDbCommand cmd = new OleDbCommand(strCmd, conn); cmd.Parameters.AddRange(values); rows = cmd.ExecuteNonQuery(); } catch(Exception ex) { Console.WriteLine(ex.Message); } finally { conn.Close(); } } return rows; }
DataTable用法
//获取数据表 public static DataTable GetDataTable(string strCmd) { DataTable table = new DataTable(); OleDbConnection conn = OpenConnection(); if(conn.State == ConnectionState.Open) { try { OleDbDataAdapter adapter = new OleDbDataAdapter(strCmd, conn); adapter.Fill(table); } catch (Exception ex) { Console.WriteLine("GetDataTable:" + ex.Message); } finally { conn.Close(); } } return table; }