VC串連SQL Server資料庫
來源:互聯網
上載者:User
>1.VC串連SQL Server資料庫時,需要作哪些設定?
-----------------------------------------------------
(1)初始化COM庫,引入ADO庫定義檔案
(2)用Connection對象串連資料庫
(3)利用建立好的串連,通過Connection、Command對象執行SQL命令,或利用Recordset對象取得結果記錄集進行查詢、處理。
(4)使用完畢後關閉串連釋放對象。
>2.ADO、OLEDB、ODBC、DAO等幾個資料庫相關的詞分別什麼意思?有什麼關係?
-----------------------------------------------------
是幾種不同的資料庫連接方式.
OLEDB 是一種基於組件對象的資料庫連接方式.
ADO 是建立在 OLEDB 基礎之上的一種簡單快速的 OLEDB 串連方式.
ODBC 各資料庫廠商基於 Microsoft 開發給他們的資料庫公用介面而開發的串連方式.
DAO 是微軟開發的更簡單的資料連線方式, 早期使用得比較多.
>3.VC串連資料庫的簡要步驟。
-----------------------------------------------------
手上有一些, 順便在網上看了一下, 下面這個應該是對的.
http://www.yesky.com/413/1839913.shtml
以下提供一個 VC + ADO 資料庫連接方式的主要代碼:
#import "c:\Program Files\Common Files\system\ado\msadox.dll" rename_namespace("ADOX")
#import "c:\Program Files\Common Files\System\ADO\msado15.dll" \
rename_namespace("ADO") rename("EOF", "EndOfFile")
#pragma warning (disable: 4146)
#include "icrsint.h"
#include "Shlwapi.h"
#pragma comment(lib,"Shlwapi.lib")
using namespace ADO;
CoInitialize(NULL);
using namespace ADOX;
_CatalogPtr m_pCatalog = NULL;
CString strConnection, strTable;
TCHAR chFilePath[MAX_PATH];
GetModuleFileName(NULL,chFilePath,MAX_PATH);
(_tcsrchr(chFilePath, '\\'))[1] = 0;
lstrcat(chFilePath , _T("Test.mdb"));
strTable = chFilePath;
strConnection = _T("Provider=Microsoft.JET.OLEDB.4.0;Data source = ") + strTable + _T(";Jet OLEDB:Engine Type=5;");
if(!PathFileExists(chFilePath))
{
try
{
m_pCatalog.CreateInstance(__uuidof(Catalog));
m_pCatalog->Create(_bstr_t(strConnection ));
}
catch(...)
{
m_pCatalog->Release();
m_pCatalog = NULL;
CoUninitialize();
}
m_pCatalog->Release();
// m_pCatalog->Release();
// m_pCatalog = NULL;
}
CoUninitialize();