當前位置:首頁 » 操作系統 » vcodbc連接資料庫連接

vcodbc連接資料庫連接

發布時間: 2023-02-03 05:56:10

⑴ 如何使用odbc連接資料庫

使用odbc連接資料庫的步驟如下:
1、首先安裝Mysql
odbc
connector
插件。配置32位ODBC數據源,選擇「控制面板」->"系統和安全"->"管理工具",如下圖所示:
2、雙擊ODBC數據源(32位),進入下面界面,如下圖所示:
3、切換至「系統DSN」選項卡,滾動並選擇MySQL
ODBC
5.3
Unicode
Driver,單擊完成,如下圖所示:
4、配置數據源與用戶名密碼,並選擇相應的資料庫(註:Data
Source
Name
需要自己命名,Database
需要選擇自己需要使用的資料庫),以下是配置好的數據源,如下圖所示:
5、打開SSDT,新建ODBC數據源,選擇剛剛建立的數據源,輸入用戶名和密碼(與設置數據源的時候的用戶名和密碼一致),如下圖所示:

⑵ sql如何連接odbc資料庫,vc怎麼連接odbc資料庫

建議使用ado來連接,使用odbc比較繁瑣的,如下是我精心總結的使用ado連接資料庫方法

*******************************************
**********首先是連接Access資料庫***********
*******************************************

@@@@@@@以下在VC6.0環境中都能實現@@@@@@@@@@@
================ADO方法:==================
|||||針對Access2003:---->參照實例Ado6666.zip文件
//首先要在文件的頭部引入一個動態鏈接庫:
#import "c:\program files\common files\system\ado\msado15.dll" \
no_namespace \
rename ("EOF", "adoEOF") \
rename ("BOF","adoBOF")
//連接指針,實例方法一
_ConnectionPtr pConn(__uuidof(Connection));
//連接指針,實例方法二
_ConnectionPtr pConn; pConn.CreateInstance(__uuidof(Connection));
//對於ADO的連接,要指定一個Provider和一個數據源
//ADO連接Access的Provider是Microsoft.Jet.OLEDB.4.0而數據源就是一個Access文件
Provider = Microsoft.Jet.OLEDB.4.0;
Data Source = ×××.mdb
//調用Open函數打開連接
//Open的第一個參數是連接字元串(ConnectionString),即由Provider和Data Source組成的一個字元串
//第二個和第三個參數是數據源的用戶名和密碼,如果沒有給它們指定,則為空字元串
pConn->Open("","","",adConnectUnspecified);
//打開記錄集兩種方式
//方式一: 該方式打開一個SQL語句執行的內容,且能夠對記錄集進行查詢、修改、添加和刪除
pRset->Open("SELECT * FROM 學生",(_variant_t)((IDispatch*)pConn),adOpenDynamic,adLockOptimistic,adCmdText);
//方式二: 該方式打開一個SQL語句執行的內容,與「方式一」所不同的是,我們只能對其查詢
pRset = pConn->Execute("SELECT * FROM 學生",NULL,adCmdText);
//另加說明:還有其他打開方式,如利用_CommandPtr指針對象,也是可以有同樣的操作的
//記錄集和資料庫的練級的關閉
pRset->Close(); //關閉
pRset.Release(); //釋放
pRset = NULL; //設其值為NULL,防止到處亂指
pConn->Close(); //關閉
pConn.Release(); //釋放
pConn = NULL; //設其值為NULL,防止到處亂指
-------------------------------------------------------------------------------------------
|||||針對Access2007:---->參照實例Ado7777.zip文件
我們知道Access2007文件的後綴名是.accdb,經過測試我們知道,使用Microsoft.Jet.OLEDB.4.0 Provider
已經不能打開資料庫,微軟給我們提供了一個支持Access2007資料庫連接的Provider:Microsoft.ACE.OLEDB.12.0
只是這樣還不夠,還需要一個數據引擎,我從網上下了一個:AccessDatabaseEngine.exe,安裝之後就可以用了。
其他操作和連接Access2003大同小異,沒有什麼區別。
-------------------------------------------------------------------------------------------
|||||針對SQL Server2005:---->參照實例DBLinkToSS2005.zip文件
對於ADO技術的使用,只要做好連接字元串,其他操作基本相同
對於連接SQL Server2005,主要還是ConnectionString的問題,它的ConnectionString是:
Provider=MSDASQL.1;Password=lanche;Persist Security Info=True;User ID=sa;Data Source=mysqlserver2005ds;Initial Catalog=master
這段代碼比較長,不容易記住,但是沒有必要,有一種簡便的方法,可以准確無誤地做好連接字元串的准備
方法如下:
1,向對話框中添加兩個ActiveX控制項:Microsoft ADO Data Control 6.0(SP6)和Microsoft DataGrid Control 6.0(SP6)
要注意的是,在"Insert Active Control"對話框中還有一個與Microsoft DataGrid Control 6.0類似的控制項:DBGrid Control,
千萬別加錯了!
2,打開Microsoft ADO Data Control 6.0(SP6)控制項的屬性對話框,在標簽控制項中選擇Control標簽,點擊"Build",將會彈出一個數據
連接屬性對話框,這里有很多種連接,當然我不可能把所有的情況都說一遍,現在我只說說現在我的做法:
【提供程序】選擇Microsoft OLEDB DB Provider for ODBC Drivers【連接】選擇一個數據源,如我利用
SQL Server Native Client 10.0驅動程序建立了一個名為"mysqlserver2005ds"數據源
3,如果測試連接成功後,即可以得到一個ConnectionString了
-------------------------------------------------------------------------------------------
|||||針對Oracle 11g:---->參照實例DBLinkToSS2005.zip文件
連接Oracle11g的方法和連接SQL Server2005的方法是一樣的,在這里我只給出我做的實例的ConnectionString
Provider=MSDASQL.1;Password=lanche;Persist Security Info=True;User ID=system;Data Source=Oracle ODBC for Visual C++
###########################################################################################
備註:
1,其他資料庫連接,比如到SQL Server2008(SQL Server2000不必說,因為它已經退出歷史舞台),還有Oracle10g,它應該和Oracle11g的連接
方法一樣,沒什麼變化。還有一類資料庫,我不想討論,比如MySQL,DB2等。
2,還有三種連接資料庫技術:ODBC,OLE,DAO,這三種方法比較古老,ODBC只是在數據源方面還很有用,至於用它來做資料庫開發,是不適宜的;
DAO是建立在OLE之上的一種技術,如今出現了ADO技術,雖說DAO技術在某些方面還是有一些優勢,但還是被ADO給淘汰了,據我所知,DAO
已經被淘汰了,目前ADO是使用最廣泛也是最便利的技術,所以綜合這四種技術,在資料庫開發中推薦使用ADO.故不再討論其他連接技術了。
…………………………………………Summed on by Chengming………………………………………………
……………………………If you have any question,please contact me…………………………………
…………………My QQ number is 1204833748 and my e-mail is [email protected]…………………

⑶ 如何用VC連接SQL資料庫!ODBC數據源類型的!!

(1).在文件stdafx.h中最後一個#endif的前一行寫入
#import "C:\program files\common files\System\ado\msado15.dll" no_namespace \
rename("EOF","EndOfFile") \
rename("LockTypeEnum","newLockTypeEnum")\
rename("DataTypeEnum","newDataTypeEnum")\
rename("FieldAttributeEnum","newFieldAttributeEnum")\
rename("EditModeEnum","newEditModeEnum")\
rename("RecordStatusEnum","newRecordStatusEnum")\
rename("ParameterDirectionEnum","newParameterDirectionEnum")
如果你的系統不是安裝在C盤的話就把#import 後面的C改成系統所有的盤
(2).在C***App類的
public:下加入
_RecordsetPtr m_pADOSet;
bool ADOExecute(_RecordsetPtr &ADOSet, _variant_t &strSQL);
在private:下加入_ConnectionPtr ADOConn;
在class C***App : public CWinApp
{
...
};之後#endif之前加入extern C***App theApp;

(3)在BOOL C***App::InitInstance()函數中Enable3dControls(); // Call this when linking to MFC statically這一行下面加入
if( FAILED(::CoInitialize(NULL)) )
{
AfxMessageBox("ADO Init failed");
return false;
}
try
{
ADOConn.CreateInstance(__uuidof(Connection));
ADOConn->Open("DSN=OBDC數據源;Provider=MSDASQL","用戶","密碼", adConnectUnspecified);//這一行要自已修改
}
catch(_com_error &e)
{
CString err;
err.Format("%s", (char*)(e.Description()) );
AfxMessageBox(err);
}
catch(...)
{
AfxMessageBox("Unknown Error...");
}
m_pADOSet.CreateInstance(__uuidof(Recordset));
並在文件最後加上如下代碼:
bool C***App::ADOExecute(_RecordsetPtr &ADOSet, _variant_t &strSQL)
{
if ( ADOSet->State == adStateOpen) ADOSet->Close();
try
{
ADOSet->Open(strSQL, ADOConn.GetInterfacePtr(), adOpenStatic, adLockOptimistic, adCmdUnknown);
return true;
}
catch(_com_error &e)
{
CString err;
err.Format("ADO Error: %s",(char*)e.Description());
AfxMessageBox(err);
return false;
}
}

最後就可以在登錄時執行SQL語句了,比如用戶為CString strUser, 密碼是CString strPwd;資料庫表是user_table(user_id, user_name, user_pwd)則
_variant_t strQuery, Holder;
strQuery = "select * from user_table where user_name='"+strUser +"' and user_pwd='"+ strPwd +"'";
theApp.ADOExecute(theApp.m_pADOSet, strQuery);
int iCount = theApp.m_pADOSet->GetRecordCount();
if ( 0==iCount )
{
AfxMessageBox(_T("密碼錯誤"), MB_ICONEXCLAMATION);
return;
}
else
{
AfxMessageBox(_T("登錄成功"), MB_ICONEXCLAMATION);
}

⑷ vc下用odbc連接mysql

::SQLConfigDataSource(NULL,ODBC_ADD_DSN,"SQL Server","DSN=aaa\0 SERVER=(Local)\0

DATABASE=mydb\0\0"); //odbc中添加一個數據源,數據源名稱:aaa,本地伺服器,資料庫名:mydb
try
{
CDatabase m_DbOdbc; //創建資料庫對象
m_DbOdbc.OpenEx("DSN=aaa;UID=user;PWD=pa;",CDatabase::noOdbcDialog); //鏈接並打開資料庫
}
catch(CDBException *e)
{
return FALSE;
}

要包含頭文件
#include <odbcinst.h>
#include <afxdb.h>

熱點內容
網易我的世界四月伺服器維護 發布:2024-05-07 04:24:58 瀏覽:212
gdb調試文件夾 發布:2024-05-07 04:03:25 瀏覽:154
玩5款大型游戲需要什麼配置 發布:2024-05-07 03:59:09 瀏覽:90
什麼安卓游戲畫面炫酷 發布:2024-05-07 03:58:18 瀏覽:73
無錫五洋賽德壓縮機有限公司 發布:2024-05-07 03:28:05 瀏覽:152
安卓手機如何打開qrs 發布:2024-05-07 03:18:31 瀏覽:466
c語言給數組排序 發布:2024-05-07 03:18:30 瀏覽:76
職工個人所得稅登錄密碼是多少 發布:2024-05-07 03:14:22 瀏覽:707
編譯程序組成部分 發布:2024-05-07 03:02:07 瀏覽:97
伺服器怎麼做雙機 發布:2024-05-07 02:37:25 瀏覽:36