VC 使用ADO連線SQL Server資料庫

2021-07-09 22:22:27 字數 2430 閱讀 1362

vc++使用ado連線sql server資料庫

基本步驟:

1.建立乙個基於對話方塊的應用程式adodatabase。

2.建立乙個用來連線的ado類庫。系統選單中insert->new class項,class type選擇generic class; 在name後輸入類名「adoconn」,點ok。這樣,在工程上自動生成adoconn.h和adoconn.cpp兩個檔案。

3.在adoconn.h中匯入乙個ado動態鏈結庫msado15.dll,新增**:#import "c:\program files\common files\system\ado\msado15.dll" no_namespace rename("eof","adoeof") rename("bof","adobof"),同時在adoconn.h中定義 public://新增乙個指向connection物件的指標: _connectionptr m_pconnection; //新增乙個指向recordset物件的指標: _recordsetptr m_precordset。

4.m_pconnection->open(_bstr_t connectionstring, _bstr_t userid, _bstr_t password, long options) 操作。connectionstring為vc++中對sql server中ado設定。如,provider=sqloledb;integrated security=sspi;persist security info=false;initial catalog=suntest;data source=www-ed1f301e78b ;user id=sa;password=;

其中data source為伺服器名稱,可以用server代替,本機表示為.或者(local);initial catalog為你要使用的資料庫名稱可以用database代替;integrated security=sspi表示用整合模式,此時uid 和pwd 設定不起作用;只有當integrated security=false表示用混合模式,uid 和pwd 設定才起作用

引數options表示commandtext的型別:adcmdtext-文字命令;adcmdtable-表名 adcmdproc-儲存過程;adcmdunknown-未知

5.新增兩個成員函式:(1)執行查詢函式 _recordsetptr& getrecordset(_bstr_t bstrsql);(2)執行sql語句 bool executesql(_bstr_t bstrsql)。

給出兩個檔案的完整**:

// adoconn.h: inte***ce for the adoconn class.

#import "c:\program files\common files\system\ado\msado15.dll" no_namespace rename("eof","adoeof") rename("bof","adobof")

#if !defined(afx_adoconn_h__ac448f02_af26_45e4_9b2d_d7ecb8ffcfb9__included_)

#define afx_adoconn_h__ac448f02_af26_45e4_9b2d_d7ecb8ffcfb9__included_

#if _msc_ver > 1000

#pragma once

#endif // _msc_ver > 1000

class adoconn

;#endif // !defined(afx_adoconn_h__ac448f02_af26_45e4_9b2d_d7ecb8ffcfb9__included_)

#include "stdafx.h"

#include "adoconn.h"

#ifdef _debug

#undef this_file

static char this_file=__file__;

#define new debug_new

#endif

adoconn::adoconn()

adoconn::~adoconn()

// 初始化—連線資料庫

void adoconn::oninitadoconn()

// 捕捉異常

catch(_com_error e)

}// 執行查詢

_recordsetptr& adoconn::getrecordset(_bstr_t bstrsql)

// 捕捉異常

catch(_com_error e)

// 返回記錄集

return m_precordset;

}// 執行sql語句,insert update _variant_t

bool adoconn::executesql(_bstr_t bstrsql)

catch(_com_error e)

}void adoconn::exitconnect()

VC使用UDL檔案建立ADO連線

最近在改乙個vc的專案,需要靈活的配置資料庫連線,我用到了資料鏈結檔案,使用 udl檔案必須在系統中先安裝 microsoft mdac win 2000以後的版本 中都自動包含了該元件。關於udl的使用只強調兩點。m pconnection connectionstring file name m...

vc 使用ADO程式設計

ado實際上就是由一組automation物件構成的元件,因此可以象使用其它任何automation物件一樣使用ado。ado中最重要的物件有三個 connection command和recordset,它們分別表示連線物件 命令物件和記錄集物件。如果您熟悉使用mfc中的odbc類 cdataba...

VC 使用ADO連線資料庫(SqlServe

ado連線資料庫 import c program files x86 common files system ado msado15.dll no namespace rename eof endoffile rename bof firstoffile ado連線資料庫 coinitialize...