ado技術目前已經成為連線資料庫的主流技術,下面介紹如何使用ado來動態建立access資料庫。
為了使用ado,必須引入微軟的兩個動態連線庫msadox.dll和msado15.dll:
#pragma warning (disable: 4146)
#import "c:/program files/common files/system/ado/msadox.dll"
#import "c:/program files/common files/system/ado/msado15.dll" no_namespace rename("eof", "endoffile")
#pragma warning (default: 4146)
將上述**加入到stdafx.h檔案中,由於ado是com元件,因此使用ado之前還要初始化com環境:
coinitialize(null);
下面是乙個在access資料庫中建立表的sql語句的例子:
create table test
(nametext(20) with compression not null,
score decimal(12,4) not null default 0,
id smallint 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 strcnn(_t("provider=microsoft.jet.oledb.4.0;data source = d:"));
tryelse
}catch(_com_error &e)
建立乙個連線物件開啟剛剛建立的mdb檔案:
_connectionptr g_pconn;
g_pconn.createinstance(__uuidof(connection));
g_pconn->open("provider=microsoft.jet.oledb.4.0;data source=d:;",
"", "", adconnectunspecified);
下面函式用來執行sql檔案中的sql語句:
// function name : runsqlscript
// description: 執行sql指令碼, [email protected], 2003-09-15
// return type: bool 成功返回true
// argument : lpcstr sqlscriptfile sql指令碼檔名
// argument : char separator sql 分割符號, 預設';'
// argument : char remarksql 注釋符號, 預設'-'
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;
trycatch(_com_error &e)
if (brunok)
errlog = errlog + _t("/n-- successed!/n");
else}}
}p++;
}free(buffer);
bret = brunok;
}return bret;
}呼叫runsqlscript建立access資料庫中的表:
runsqlscript(_t("d:"));
關閉資料庫連線:
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 mon ...
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...