vc ado動態建立access資料庫

2021-03-31 11:54:29 字數 2535 閱讀 6342

ado技術目前已經成為連線資料庫的主流技術,下面我來介紹如何使用ado來動態建立access資料庫。

為了使用ado,必須引入微軟的兩個動態連線庫msadox.dll和msado15.dll:

#pragma warning (disable: 4146)

#import "c:/program files/***mon files/system/ado/msadox.dll"

#import "c:/program files/***mon files/system/ado/msado15.dll" no_namespace rename("eof", "endoffile")

#pragma warning (default: 4146)

將上述**加入到stdafx.h檔案中,由於ado是***元件,因此使用ado之前還要初始化***環境:

coinitialize(null);

下面是乙個在access資料庫中建立表的sql語句的例子:

create table test

(nametext(20) with ***pression not null,

scoredecimal(12,4) not null default 0,

id **allint not null default 0,

birthday date,

*** char(1),

constraint ck_ch_*** check(*** in ('n','v')),

constraint pk_id primary key (id)

);使用adox::catalogptr來建立mdb檔案:

hresult hr = s_ok;

//set activeconnection of catalog to this string

cstring str**n(_t("provider=microsoft.jet.oledb.4.0;data source = d://test.mdb"));

try else



}catch(_***_error &e)

建立乙個連線物件開啟剛剛建立的mdb檔案:

_connectionptr g_pconn;

g_pconn.createinstance(__uuidof(connection));

g_pconn->open("provider=microsoft.jet.oledb.4.0;data source=d://test.mdb;",

"", "", adconnectunspecified);

下面函式用來執行sql檔案中的sql語句:

// function name : runsqlscript

// description: 執行sql指令碼, peckermen@163.***, 2003-09-15

// return type: bool 成功返回true

// argument : lpcstr sqlscriptfile sql指令碼檔名

// argument : char separator sql 分割符號, 預設';'

// argument : char remarksql 注釋符號, 預設'-'

bool runsqlscript(lpcstr sqlscriptfile, char separator = ';', char remark = '-')

 else

 else

else



 }

 else

 }



 psql++;

}

psql = p + 1;

errlog = errlog + _t("-- sql running .../n");

errlog = errlog + strsql;

_variant_t vrecords;

m_nrecordsaffected = 0;

try

catch(_***_error &e)



if (brunok)

 errlog = errlog + _t("/n-- successed!/n");

else



 }

} }

 p++;

}free(buffer);

bret = brunok;

}return bret;

}呼叫runsqlscript建立access資料庫中的表:

runsqlscript(_t("d://test.sql"));

關閉資料庫連線:

g_pconn->close();

::couninitialize();

以上**演示了怎樣在vc中利用ado根據sql檔案動態建立乙個access資料庫,歡迎指正。

vc ado動態建立access資料庫

如何使用ado來動態建立access資料庫。為了使用ado,必須引入微軟的兩個動態連線庫msadox.dll和msado15.dll pragma warning disable 4146 import c program files mon files system ado msadox.dll ...

VC ADO動態建立Access資料庫

ado技術目前已經成為連線資料庫的主流技術,下面介紹如何使用ado來動態建立access資料庫。為了使用ado,必須引入微軟的兩個動態連線庫msadox.dll和msado15.dll pragma warning disable 4146 import c program files common...

vc ado建立access資料庫

1.首先在stdafx.h檔案中加入 pragma warning disable 4146 import c program files common files system ado msadox.dll import c program files common files system ad...