




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
...wd......wd......wd...C#操作Access數(shù)據(jù)庫(kù)的根基知識(shí)淺析C#操作Access數(shù)據(jù)庫(kù)的根基知識(shí)都有什么呢C#操作Access數(shù)據(jù)庫(kù)的根基知識(shí)1.通過(guò)ADO.NET的OleDb相關(guān)類(lèi)來(lái)操作Access主要知識(shí)點(diǎn)如下:using
System.Data.OleDb;
using
System.Data;
連接字符串:String
connectionString
=
"Provider=Microsoft.Jet.OLEDB.4.0;
Data
Source=product.mdb";
建設(shè)連接:OleDbConnection
connection
=
new
OleDbConnection(connectionString);
使用OleDbCommand類(lèi)來(lái)執(zhí)行Sql語(yǔ)句:OleDbCommand
cmd
=
new
OleDbCommand(sql,
connection);
connection.Open();
cmd.ExecuteNonQuery();
C#操作Access數(shù)據(jù)庫(kù)的根基知識(shí)2.取得Access自增標(biāo)識(shí)字段在插入數(shù)據(jù)后的id值cmd.CommandText
=
@"select
@@identity";
int
value
=
Int32.Parse(cmd.ExecuteScalar().ToString());
return
value;
C#操作Access數(shù)據(jù)庫(kù)的根基知識(shí)3.執(zhí)行事務(wù)需要用到OleDbTransaction,關(guān)鍵語(yǔ)句如下: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數(shù)據(jù)庫(kù)的根基知識(shí)4.執(zhí)行查詢,返回DataSetOleDbConnection
connection
=
new
OleDbConnection(connectionString);
DataSet
ds
=
new
DataSet();
connection.Open();
OleDbDataAdapter
da
=
new
OleDbDataAdapter(sql,
connection);
da.Fill(ds,"ds");
C#操作Access數(shù)據(jù)庫(kù)的根基知識(shí)5.分頁(yè)查詢分頁(yè)查詢使用OleDbDataReader來(lái)讀取數(shù)據(jù),并將結(jié)果寫(xiě)到一個(gè)DataSet中返回。以上內(nèi)容封裝為三個(gè)可重用的類(lèi):AccessDBUtil,AccessPageUtil,PageC#操作Access數(shù)據(jù)庫(kù)的根基知識(shí)的基本情況就向你介紹到這里,希望對(duì)你學(xué)習(xí)C#操作Access數(shù)據(jù)庫(kù)的根基知識(shí)有所幫助。C#操作Access之創(chuàng)立mdb庫(kù)淺析C#操作Access之創(chuàng)立mdb庫(kù)是若何實(shí)現(xiàn)的呢首先我們來(lái)看看基本的知識(shí):本文C#操作Access數(shù)據(jù)庫(kù)的根基知識(shí),并提供一個(gè)相關(guān)的實(shí)例。C#的ADO.NET還不能通過(guò)編程方式創(chuàng)立全新的ACCESS(MDB)數(shù)據(jù)庫(kù),所以還只能使用ADOX這個(gè)來(lái)自COM的鏈接庫(kù)來(lái)操作。C#操作Access主要知識(shí)點(diǎn)如下:using
System.Data.OleDb;
using
System.Data;
C#操作Access連接字符串:String
connectionString
=
"Provider=Microsoft.Jet.OLEDB.4.0;
Data
Source=product.mdb";
C#操作Access建設(shè)連接:OleDbConnection
connection
=
new
OleDbConnection(connectionString);
C#操作Access使用OleDbCommand類(lèi)來(lái)執(zhí)行Sql語(yǔ)句:OleDbCommand
cmd
=
new
OleDbCommand(sql,
connection);
connection.Open();
cmd.ExecuteNonQuery();
C#操作Access之創(chuàng)立mdb庫(kù),例程如下:需要注意的是:參數(shù)mdbPath是mdb的完整路徑〔不包含表的名稱〕。C#操作Access之創(chuàng)立mdb庫(kù)實(shí)例:D:\\test.mdb//創(chuàng)立mdb
publicstaticbool
CreateMDBDataBase(string
mdbPath)
{
try
{
ADOX.CatalogClass
cat
=
new
ADOX.CatalogClass();
cat.Create(
"Provider=Microsoft.Jet.OLEDB.4.0;Data
Source="+
mdbPath
+
";");
cat
=
null;
returntrue;
}
//C#操作Access之創(chuàng)立mdb庫(kù)catch
{
returnfalse;
}
}
C#操作Access之創(chuàng)立mdb庫(kù)的基本內(nèi)容就向你介紹到這里,希望對(duì)你了解和學(xué)習(xí)C#操作Access之創(chuàng)立mdb庫(kù)有所幫助。C#操作Access之創(chuàng)立表淺析C#操作Access之創(chuàng)立表是若何實(shí)現(xiàn)的呢首先我們來(lái)看看基本的知識(shí):本文C#操作Access數(shù)據(jù)庫(kù)的根基知識(shí),并提供一個(gè)相關(guān)的實(shí)例。C#的ADO.NET還不能通過(guò)編程方式創(chuàng)立全新的ACCESS(MDB)數(shù)據(jù)庫(kù),所以還只能使用ADOX這個(gè)來(lái)自COM的鏈接庫(kù)來(lái)操作。C#操作Access主要知識(shí)點(diǎn)如下:using
System.Data.OleDb;
using
System.Data;
C#操作Access連接字符串:String
connectionString
=
"Provider=Microsoft.Jet.OLEDB.4.0;
Data
Source=product.mdb";
C#操作Access建設(shè)連接:OleDbConnection
connection
=
new
OleDbConnection(connectionString);
C#操作Access使用OleDbCommand類(lèi)來(lái)執(zhí)行Sql語(yǔ)句:OleDbCommand
cmd
=
new
OleDbCommand(sql,
connection);
connection.Open();
cmd.ExecuteNonQuery();
C#操作Access之創(chuàng)立表,例程如下:通常一個(gè)mdb的可以包含n個(gè)表。下面的程序主要是創(chuàng)立一個(gè)table。//新建mdb的表,C#操作Access之創(chuàng)立表//mdbHead是一個(gè)ArrayList,存儲(chǔ)的是table表中的具體列名。publicstaticbool
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;
//新建一個(gè)表,C#操作Access之創(chuàng)立表ADOX.TableClass
tbl
=
new
ADOX.TableClass();
tbl.ParentCatalog
=
cat;
tbl.Name
=
tableName;
int
size
=
mdbHead.Count;
for
(int
i
=
0;
i
<
size;
i++)
{
//增加一個(gè)文本字段
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);
//這句把表參加數(shù)據(jù)庫(kù)(非常重要)
,C#操作Access之創(chuàng)立表tbl
=
null;
cat
=
null;
cn.Close();
returntrue;
}
catch
{
returnfalse;
}
}
C#操作Access之創(chuàng)立表的基本內(nèi)容就向你介紹到這里,希望對(duì)你了解和學(xué)習(xí)C#操作Access之創(chuàng)立表有所幫助。C#操作Access之讀取mdb淺析C#操作Access之讀取mdb是若何實(shí)現(xiàn)的呢首先我們來(lái)看看基本的知識(shí):本文C#操作Access數(shù)據(jù)庫(kù)的根基知識(shí),并提供一個(gè)相關(guān)的實(shí)例。C#的ADO.NET還不能通過(guò)編程方式創(chuàng)立全新的ACCESS(MDB)數(shù)據(jù)庫(kù),所以還只能使用ADOX這個(gè)來(lái)自COM的鏈接庫(kù)來(lái)操作。C#操作Access主要知識(shí)點(diǎn)如下:using
System.Data.OleDb;
using
System.Data;
C#操作Access連接字符串:String
connectionString
=
"Provider=Microsoft.Jet.OLEDB.4.0;
Data
Source=product.mdb";
C#操作Access建設(shè)連接:OleDbConnection
connection
=
new
OleDbConnection(connectionString);
C#操作Access使用OleDbCommand類(lèi)來(lái)執(zhí)行Sql語(yǔ)句:OleDbCommand
cmd
=
new
OleDbCommand(sql,
connection);
connection.Open();
cmd.ExecuteNonQuery();
C#操作Access之讀取mdb實(shí)例如下:本例返回的是一個(gè)DataTable,如需其他格式可以自行轉(zhuǎn)換。//
讀取mdb數(shù)據(jù)
publicstatic
DataTable
ReadAllData(string
tableName,
string
mdbPath,refbool
success)
{
DataTable
dt
=
new
DataTable();
try
{
DataRow
dr;
//1、建設(shè)連接
C#操作Access之讀取mdbstring
strConn
=
@"Provider=Microsoft.Jet.OLEDB.4.0;Data
Source="+
mdbPath
+
";Jet
OLEDB:Database
Password=haoren";
OleDbConnection
odcConnection
=
new
OleDbConnection(strConn);
//2、翻開(kāi)連接
C#操作Access之讀取mdbodcConnection.Open();
//建設(shè)SQL查詢
OleDbCommand
odCommand
=
odcConnection.CreateCommand();
//3、輸入查詢語(yǔ)句
C#操作Access之讀取mdbodCommand.CommandText
=
"select
*
from
"
+
tableName;
//建設(shè)讀取
OleDbDataReader
odrReader
=
odCommand.ExecuteReader();
//查詢并顯示數(shù)據(jù)
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);
}
//關(guān)閉連接
C#操作Access之讀取mdbodrReader.Close();
odcConnection.Close();
success
=
true;
return
dt;
}
catch
{
success
=
false;
return
dt;
}
}
C#操作Access之讀取mdb的基本內(nèi)容就向你介紹到這里,希望對(duì)你了解和學(xué)習(xí)C#操作Access之讀取mdb有所幫助。C#操作Access之按列讀取mdb淺析C#操作Access之按列讀取mdb是若何實(shí)現(xiàn)的呢首先我們來(lái)看看基本的知識(shí):本文C#操作Access數(shù)據(jù)庫(kù)的根基知識(shí),并提供一個(gè)相關(guān)的實(shí)例。C#的ADO.NET還不能通過(guò)編程方式創(chuàng)立全新的ACCESS(MDB)數(shù)據(jù)庫(kù),所以還只能使用ADOX這個(gè)來(lái)自COM的鏈接庫(kù)來(lái)操作。C#操作Access主要知識(shí)點(diǎn)如下:using
System.Data.OleDb;
using
System.Data;
C#操作Access連接字符串:String
connectionString
=
"Provider=Microsoft.Jet.OLEDB.4.0;
Data
Source=product.mdb";
C#操作Access建設(shè)連接:OleDbConnection
connection
=
new
OleDbConnection(connectionString);
C#操作Access使用OleDbCommand類(lèi)來(lái)執(zhí)行Sql語(yǔ)句:OleDbCommand
cmd
=
new
OleDbCommand(sql,
connection);
connection.Open();
cmd.ExecuteNonQuery();
C#操作Access之按列讀取mdb內(nèi)容實(shí)例如下:columns數(shù)組存儲(chǔ)的是你要查詢的列名稱〔必須確保mdb表中存在你要的列〕//
讀取mdb數(shù)據(jù)
publicstatic
DataTable
ReadDataByColumns(string
mdbPaht,string
tableName,
string[]
columns,
refbool
success)
{
DataTable
dt
=
new
DataTable();
try
{
DataRow
dr;
//1、建設(shè)連接
C#操作Access之按列讀取mdbstring
strConn
=
@"Provider=Microsoft.Jet.OLEDB.4.0;Data
Source="+
mdbPath
+
";Jet
OLEDB:Database
Password=haoren";
OleDbConnection
odcConnection
=
new
OleDbConnection(strConn);
//2、翻開(kāi)連接
C#操作Access之按列讀取mdbodcConnection.Open();
//建設(shè)SQL查詢
OleDbCommand
odCommand
=
odcConnection.CreateCommand();
//3、輸入查詢語(yǔ)句
string
strColumn
=
"";
for
(int
i
=
0;
i
<
columns.Length;
i++)
{
strColumn
+=
columns[i].ToString()
+
",";
}
strColumn
=
strColumn.TrimEnd(',');
odCommand.CommandText
=
"select
"+strColumn+"
from
"
+
tableName;
//建設(shè)讀取
C#操作Access之按列讀取mdbOleDbDataReader
odrReader
=
odCommand.ExecuteReader();
//查詢并顯示數(shù)據(jù)
C#操作Access之按列讀取mdbint
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);
}
//關(guān)閉連接
C#操作Access之按列讀取mdbodrReader.Close();
odcConnection.Close();
success
=
true;
return
dt;
}
catch
{
success
=
false;
return
dt;
}
}
C#操作Access之按列讀取mdb的基本內(nèi)容就向你介紹到這里,希望對(duì)你了解和學(xué)習(xí)C#操作Access之按列讀取mdb有所幫助。C#操作Access實(shí)例解析C#操作Access實(shí)例是若何實(shí)現(xiàn)的呢讓我們來(lái)看看具體的代碼: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
的摘要說(shuō)明C#操作Access實(shí)例解析///
</summary>publicclass
DataAccess
{
protectedstatic
OleDbConnection
conn
=
new
OleDbConnection();
protectedstatic
OleDbCommand
comm
=
new
OleDbCommand();
public
DataAccess()
{
//initC#操作Access實(shí)例解析}
privatestaticvoid
openConnection()
{
if
(conn.State
==
ConnectionState.Closed)
{
conn.ConnectionString
=
@"Provider=Microsoft.Jet.OleDb.4.0;
Data
Source="+ConfigurationManager.AppSettings["myconn"];
//web.config文件里設(shè)定。comm.Connection
=
conn;
try{
conn.Open();
}
catch
(Exception
e)
{
thrownew
Exception(e.Message);
}
}
}//翻開(kāi)數(shù)據(jù)庫(kù)C#操作Access實(shí)例解析privatestaticvoid
closeConnection()
{
if
(conn.State
==
ConnectionState.Open)
{
conn.Close();
conn.Dispose();
comm.Dispose();
}
}//關(guān)閉數(shù)據(jù)庫(kù)C#操作Access實(shí)例解析publicstaticvoid
excuteSql(string
sqlstr)
{
try{
openConnection();
comm.CommandType
=
CommandType.Text;
comm.CommandText
=
sqlstr;
comm.ExecuteNonQuery();
}
catch
(Exception
e)
{
thrownew
Exception(e.Message);
}
finally{
closeConnection();
}
}//執(zhí)行sql語(yǔ)句C#操作Access實(shí)例解析publicstatic
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語(yǔ)句的OleDbDataReader對(duì)象,使用時(shí)請(qǐng)注意關(guān)閉這個(gè)對(duì)象。publicstaticvoid
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實(shí)例解析catch{
}
finally{
closeConnection();
}
}
}
//返回指定sql語(yǔ)句的OleDbDataReader對(duì)象,使用時(shí)請(qǐng)注意關(guān)閉publicstatic
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)
{
thrownew
Exception(e.Message);
}
finally{
closeConnection();
}
return
ds;
}//返回指定sql語(yǔ)句的datasetC#操作Access實(shí)例解析publicstaticvoid
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)
{
thrownew
Exception(e.Message);
}
finally{
closeConnection();
}
}//返回指定sql語(yǔ)句的datasetC#操作Access實(shí)例解析publicstatic
DataTable
dataTable(string
sqlstr)
{
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中國(guó)石平鍋市場(chǎng)調(diào)查研究報(bào)告
- 二零二五年度包裝新風(fēng)施工與空氣質(zhì)量改善協(xié)議
- 鋁合金模板勞務(wù)合同范本
- 醫(yī)院物業(yè)管理服務(wù)協(xié)議書(shū)范本
- 貨物、服務(wù)采購(gòu)招標(biāo)代理協(xié)議書(shū)范本
- 農(nóng)業(yè)園區(qū)用地經(jīng)紀(jì)合作協(xié)議
- 藥品倉(cāng)庫(kù)裝卸管理協(xié)議
- 園林綠化土石方居間合同書(shū)
- 工廠改造購(gòu)銷(xiāo)合同范本
- 2025年急診科護(hù)士長(zhǎng)述職報(bào)告范文
- 米酒的制作流程
- 施工現(xiàn)場(chǎng)防高墜培訓(xùn)
- 船舶水下輻射噪聲指南 2025
- 2024年黑龍江哈爾濱市中考英語(yǔ)真題卷及答案解析
- DB31-T 1310-2021 火花探測(cè)和熄滅系統(tǒng)應(yīng)用指南
- 消防系統(tǒng)管道支架施工方案
- 北京版(一起)英語(yǔ)二年級(jí)下冊(cè)單詞默寫(xiě)表
- 2025-2025學(xué)年牛津譯林英語(yǔ)七年級(jí)下冊(cè)(7B)教學(xué)計(jì)劃
- 中建抹灰工程專項(xiàng)施工方案
- 地方融資平臺(tái)債務(wù)和政府中長(zhǎng)期支出事項(xiàng)監(jiān)測(cè)平臺(tái)操作手冊(cè)-單位
- 心得體會(huì) 2025教師暑假政治學(xué)習(xí)心得體會(huì)
評(píng)論
0/150
提交評(píng)論