C#操作Access數(shù)據(jù)庫(kù)基礎(chǔ)知識(shí)淺析_第1頁(yè)
C#操作Access數(shù)據(jù)庫(kù)基礎(chǔ)知識(shí)淺析_第2頁(yè)
C#操作Access數(shù)據(jù)庫(kù)基礎(chǔ)知識(shí)淺析_第3頁(yè)
C#操作Access數(shù)據(jù)庫(kù)基礎(chǔ)知識(shí)淺析_第4頁(yè)
C#操作Access數(shù)據(jù)庫(kù)基礎(chǔ)知識(shí)淺析_第5頁(yè)
已閱讀5頁(yè),還剩11頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(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.通過ADO.NET的OleDb相關(guān)類來(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)執(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é)果寫到一個(gè)DataSet中返回。以上內(nèi)容封裝為三個(gè)可重用的類: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還不能通過編程方式創(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)執(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還不能通過編程方式創(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)執(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還不能通過編程方式創(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)執(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、翻開連接

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還不能通過編程方式創(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)執(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、翻開連接

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

的摘要說明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);

}

}

}//翻開數(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ú)特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論