ASP.NET[C#]的ACCESS数据库操作类

本文提供了一套ASP.NET中使用C#操作ACCESS数据库的方法,包括获取数据集、更新字段、添加及删除数据行等功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ASP.NET[C#]的ACCESS数据库操作类

      //网上很多都是操作SQL SER 的,整理了一下,不是很完善,但不影响使用,呵呵……
//private string datapatch = ConfigurationSettings.AppSettings["acessconn"];//数据库地址 private string datapatch = "db/global.asa";//数据库地址 /// /// 取得dataset /// /// 查询语句 /// public DataSet GetDataSet(string Commandtext) { string strConnection = "Provider=Microsoft.Jet.OLEDB.4.0; " + "Data Source=" + Server.MapPath(datapatch); string strCommandText = Commandtext; OleDbConnection myConnection = new OleDbConnection(strConnection); myConnection.Open(); OleDbDataAdapter myAdpater = new OleDbDataAdapter(strCommandText,myConnection); OleDbCommandBuilder myBuilder = new OleDbCommandBuilder(myAdpater); DataSet myDataset = new DataSet(); myAdpater.Fill(myDataset); myConnection.Close(); return myDataset; } /// /// 取得表 /// /// 查询语句 /// public DataTable GetDataTable(string Commandtext) { string strConnection = "Provider=Microsoft.Jet.OLEDB.4.0; " + "Data Source=" + Server.MapPath(datapatch); string strCommandText =Commandtext; OleDbConnection myConnection = new OleDbConnection(strConnection); myConnection.Open(); OleDbDataAdapter myAdpater = new OleDbDataAdapter(strCommandText,myConnection); OleDbCommandBuilder myBuilder = new OleDbCommandBuilder(myAdpater); DataSet myDataset = new DataSet(); myAdpater.Fill(myDataset); DataTable mytable = myDataset.Tables[0]; myConnection.Close(); return mytable; } /// /// 取得某行的某列的值 /// /// 列的名称 /// 所属表名 /// 表的主键 /// 列所属的主键值 /// public string GetDataColum(string strColumnName,string strTableName,string strColumnkey,string strColumnValue) { string strConnection = "Provider=Microsoft.Jet.OLEDB.4.0; " + "Data Source=" + Server.MapPath(datapatch); string strCommandText = "select "+strColumnName+","+strColumnkey+" from "+strTableName; OleDbConnection myConnection = new OleDbConnection(strConnection); myConnection.Open(); OleDbDataAdapter myAdpater = new OleDbDataAdapter(strCommandText,myConnection); OleDbCommandBuilder myBuilder = new OleDbCommandBuilder(myAdpater); DataSet myDataset = new DataSet(); myAdpater.MissingSchemaAction = MissingSchemaAction.AddWithKey; myAdpater.Fill(myDataset); myConnection.Close(); DataTable mytable = myDataset.Tables[0]; DataRow mydr = mytable.Rows.Find(strColumnValue); string mydc = mydr[strColumnName].ToString(); return mydc; } /// /// 更新某个字段 /// /// 要更新字段名称 /// 要更新的值 /// 所属表名称 /// 表中KEY /// 表中KEY的值 public void UpdateColum(string strColumnName,string strValue,string strTableName,string strColumnKey,string strColumnValue) { string strConnection = "Provider=Microsoft.Jet.OLEDB.4.0; " + "Data Source=" + Server.MapPath(datapatch); string strCommandText = "select "+strColumnKey+","+strColumnName+" from "+strTableName; OleDbConnection myConnection = new OleDbConnection(strConnection); myConnection.Open(); OleDbDataAdapter myAdpater = new OleDbDataAdapter(strCommandText,myConnection); OleDbCommandBuilder myBuilder = new OleDbCommandBuilder(myAdpater); DataSet myDataset = new DataSet(); myAdpater.MissingSchemaAction = MissingSchemaAction.AddWithKey; myAdpater.Fill(myDataset,strTableName); DataRow drFindRow = myDataset.Tables[strTableName].Rows.Find(strColumnValue); drFindRow[strColumnName] = strValue; myAdpater.Update(myDataset,strTableName); myConnection.Close(); } /// /// 添加行 /// /// 此行中的字段集合 /// 此行中的字段集合的对应值 /// 所属表名称 /// 表中主键 public void AddRow(string[]columns,string[]columnvalue,string strTableName,string strColumnKey) { string strConnection = "Provider=Microsoft.Jet.OLEDB.4.0; " + "Data Source=" + Server.MapPath(datapatch); string strColumnCount = ""; foreach(string thiscolunmname in columns) { strColumnCount = thiscolunmname+","+strColumnCount; } string strCommandText = "select "+strColumnCount+strColumnKey+" from "+strTableName; OleDbConnection myConnection = new OleDbConnection(strConnection); myConnection.Open(); OleDbDataAdapter myAdpater = new OleDbDataAdapter(strCommandText,myConnection); OleDbCommandBuilder myBuilder = new OleDbCommandBuilder(myAdpater); DataSet myDataset = new DataSet(); myAdpater.Fill(myDataset,strTableName); DataRow newrow = myDataset.Tables[strTableName].NewRow(); for(int i=0;i<columns.Length;i++) { string strColumnName = columns[i].ToString(); newrow[strColumnName] = columnvalue[i].ToString(); } myDataset.Tables[strTableName].Rows.Add(newrow); myAdpater.Update(myDataset,strTableName); myConnection.Close(); } /// /// 更新数据行 /// /// 要更新的列集合 /// 要更新的列集合的对应值 /// 所属表名称 /// 表主键 /// 行所属的ID public void updateRow(string[]columns,string[]columnvalue,string strTableName,string strColumnKey,string strColumnValue) { string strConnection = "Provider=Microsoft.Jet.OLEDB.4.0; " + "Data Source=" + Server.MapPath(datapatch); string strColumnCount = ""; foreach(string thiscolunmname in columns) { strColumnCount = thiscolunmname+","+strColumnCount; } string strCommandText = "select "+strColumnCount+strColumnKey+" from "+strTableName; OleDbConnection myConnection = new OleDbConnection(strConnection); myConnection.Open(); OleDbDataAdapter myAdpater = new OleDbDataAdapter(strCommandText,myConnection); OleDbCommandBuilder myBuilder = new OleDbCommandBuilder(myAdpater); DataSet myDataset = new DataSet(); myAdpater.MissingSchemaAction = MissingSchemaAction.AddWithKey; myAdpater.Fill(myDataset,strTableName); DataRow updaterow = myDataset.Tables[strTableName].Rows.Find(strColumnValue); for(int i=0;i<columns.Length;i++) { string strColumnName = columns[i].ToString(); updaterow[strColumnName] = columnvalue[i].ToString(); } myAdpater.Update(myDataset,strTableName); myConnection.Close(); }   /// /// 删除行 /// /// 所属表 /// 主键字段名 /// 此行主键值 public void delectRow(string strTableName,string strColumnKey,string strColumnValue) { string strConnection = "Provider=Microsoft.Jet.OLEDB.4.0; " + "Data Source=" + Server.MapPath(datapatch); string strCommandText = "select "+strColumnKey+" from "+strTableName; OleDbConnection myConnection = new OleDbConnection(strConnection); myConnection.Open(); OleDbDataAdapter myAdpater = new OleDbDataAdapter(strCommandText,myConnection); OleDbCommandBuilder myBuilder = new OleDbCommandBuilder(myAdpater); DataSet myDataset = new DataSet(); myAdpater.MissingSchemaAction = MissingSchemaAction.AddWithKey; myAdpater.Fill(myDataset,strTableName); DataRow newrow = myDataset.Tables[strTableName].Rows.Find(strColumnValue); newrow.Delete(); myAdpater.Update(myDataset,strTableName); myConnection.Close(); } //----------------------------------------------------------------------------------
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值