vc使用資料庫
Ⅰ 關於vc使用資料庫
要導出注冊表項(HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\資料庫名字)
或者在程序里對注冊表進行修改
不需要資料庫軟體,軟體是用來編輯的..
就像注冊表編輯器.....
Ⅱ vc怎麼使用mariadb資料庫
//下面使用Mysql Connector/net提供的專用對象
MySqlConnection mycon = new MySqlConnection(constr);
mycon.Open();
MySqlCommandmycmd = new MySqlCommand("select * from users", mycon);
MySqlDataReader myreader = mycmd.ExecuteReader();
while (myreader.Read())
Ⅲ VC怎麼操作資料庫
你必須建立資料庫的工作...
在「控制面板」,選擇「管理工具」,打開數據源(ODBC),然後ODBC數據源管理器對話框彈出。系統
打開「DNS」選項卡上,單擊「添加」,選擇。附上海塗種植Access驅動程序(* mdb)中,單擊「完成」,然後輸入數據源的名稱和說明。 (如果你是在其他人的代碼,數據源的名稱可能得到,所以你必須找到工作,他使用的數據源名稱)。
(你下載的源代碼的資料庫的路徑),然後選擇資料庫。
它只是設置。 。 。
Ⅳ VC操作資料庫
你這種情況可以直接通過ODBC的方式對資料庫進行訪問。。。而且是直接使用ODBC API,不使用經過MFC類庫包裝過的ODBC相關的類庫。
ODBC API一般聲明於頭文件<sql.h>中
直接用ODBC API進行資料庫訪問的流程如下:
1、在控制面板->管理工具->數據源(ODBC)中添加你所建立的SQL資料庫的一個新數據源。
2、通過ODBC API去訪問建立的那個數據源,與數據源建立連接
3、通過ODBC API中相應的函數,在函數中調用執業標準的SQL語句,實現對資料庫的各種操作。。。
ODBC API中的主要函數聲明如下:
分配環境句柄:
SQLRETURN SQL_API SQLAllocEnv(SQLHENV*);
分配語句句柄:
SQLRETURN SQL_API SQLAllocStmt(SQLHDBC,SQLHSTMT*);
數據源連接函數:
SQLConnect(SQLHDBC,SQLCHAR*,SQLSMALLINT,SQLCHAR*,SQLSMALLINT,SQLCHAR*,SQLSMALLINT);
SQL語句執行函數:
SQLRETURN SQL_API SQLExecute(SQLHSTMT);
關於ODBC API的詳細信息,你可以網路一下,網上很多的,這是一個比較底層,但也是一個非常普遍的連接方法,MFC以及其它很多資料庫連接,都是以ODBC API為基礎的,甚至有些只是它的一個包裝而已。。。 此外,這種連接方式不需要你掌握MFC,DAO,ADO這些五花八門的東西,只需要你有C語言的基礎和基本的資料庫概念就行了,缺點是比較底層,控制的東西很直接。。。。同時需要你有一定的SQL語句撰寫能力。
Ⅳ VC與資料庫連接(資料庫該怎麼建 )
資料庫隨便建啊,沒要求的,程序裡面的連接字元串設置好資料庫地址,資料庫名,登錄用戶名,登錄密碼就可以連了,和資料庫裡面具體欄位沒什麼關系~
Ⅵ 在VC中創建Mysql資料庫
Driver={SQL Server};Server=主機名;Database=資料庫名;Uid=sa;Pwd=sa;
還有一個比較簡單方法確定連接字元串:
1.建立一個.udl的文件。
2.雙擊打開,將裡面相關項進行設置,保存,關閉。
3.有記事本打開這個udl文件,裡面的字元串就是連接字元串!
Ⅶ 如何在VC++中使用ACCESS資料庫
很簡單,建好資料庫表後,到控制面板--管理工具的數據源中,添加你建資料庫驅動,即是設置數據源。命個名字。以便在VC程序中連接這個數據源。就可以用了。
在類中聲明一個資料庫對象。
CDatabase m_database;
m_database.Open(_T("數據源名");這樣就連接了數據源。
C**Recordset m_recordset;//這個記錄集是和你表相聯的類。關聯你會吧,就是在工作區中新建一個類,該類命名為C**Recordset。選擇基類CRecordset.向導會彈出一個對話框,然後你找到你建表的目錄,雙擊你要關聯的表。向導就會自動完成。這個記錄集,你完全要可不要動。在程序中直接引用就形了。
m_recordset(&m_database);//記錄集關聯資料庫。
CString csSQL;
csSQL=_T("");//字元串初始化
csSQL=_T("select * from **/*表名*/where CHEPAIHAO_ID=%d"),1);
m_recordset.Open(AFX_DB_DEFAULT_TYPE,csSQL);//打開記錄集第一行。
if(m_recordset.GetRecordCount()==0)
{
csSQL.Format(_T("insert into **/*表名*/ values(%d,\'%d-%d-%d\')"),m_chepaihao,m_datatime.GetYear(),m_datatime.GetMonth,m_datatime.GetDay());
//其中m_chepaihao是與車牌編輯框相關聯的字元串,m_datatime是與日期控制項相關聯的Time變數。
m_database.ExecuteSQL(csSQL);//
m_database.Close();
}
//這就添加了一行。
當然這是簡化的主要操作。你想,如果要添加一行,一般就是在對話框中,按一個按鈕,彈出令一個對話框,從這個對話框中填上車牌號,和選擇日期。然後按確定按鈕。即執行上面的代碼,添加了一行。
自己多想點。如果會VC難不到你的。
Ⅷ 請問如何用VC連接資料庫並讀取SQL Server資料庫中的數據
在新建的工程中選擇有資料庫支持,點那個數據源按鈕然後選擇要你使用的資料庫,將你做好的資料庫全部選中,在編程時建立基類為CRECORDSET的類,選擇你在該模塊中要使用的資料庫,然後在其後的編程中調用
顯示資料庫用列表控制項
剩下的就看你的編程了
Ⅸ 怎麼在VC++中用ADO創建資料庫
VC++中使用ADO方式操作ACCESS資料庫2005-12-1209:59來源:天極開發作者:劉濤責任編輯:方舟·yesky評論()ADO(ActiveXDataObject)是Microsoft資料庫應用程序開發的新介面,是建立在OLEDB之上的高層資料庫訪問技術,即使你對OLEDB,COM不了解也能輕松對付ADO,因為它非常簡單易用,甚至比你以往所接觸的ODBCAPI、DAO、RDO都要容易使用,並不失靈活性。本文詳細地介紹在VisualC++開發環境下如何使用ADO來進行資料庫應用程序開發,並給出示例代碼。為了使讀者朋友都能測試本例提供的代碼,我們採用Access資料庫,您可以直接在我們提供的示例代碼中找到這個test。mdb。程序編譯運行後的效果如圖一所示:
圖一、ADO操作ACESS資料庫的界面效果圖
一、實現方法
萬事開頭難,任何一種新技術對於初學者來說最重要的還是"入門",掌握其要點。讓我們來看看ADO資料庫開發的基本流程吧!它的基本步驟如下:
(1)初始化COM庫,引入ADO庫定義文件
(2)用Connection對象連接資料庫
(3)利用建立好的連接,通過Connection、Command對象執行SQL命令,或利用Recordset對象取得結果記錄集進行查詢、處理。
(4)使用完畢後關閉連接釋放對象。
下面我們將詳細介紹上述步驟並給出相關代碼。
1、COM庫的初始化
我們可以使用AfxOleInit()來初始化COM庫,這項工作通常在CWinApp::InitInstance()的重載函數中完成,請看如下代碼:
BOOLCADOTest1App::InitInstance()
{
AfxOleInit();
。。。。。。
}
2、用#import指令引入ADO類型庫
為了引入ADO類型庫,需要在項目的stdafx。h文件中加入如下語句:
#import"c:\programfiles\commonfiles\system\ado\msado15。dll"
no_namespacerename("EOF","adoEOF")
這一語句有何作用呢?其最終作用同我們已經十分熟悉的#include類似,編譯的時候系統會為我們生成msado15。tlh,ado15。tli兩個C++頭文件來定義ADO庫。
需要讀者朋友注意的是:您的開發環境中msado15。dll不一定在這個目錄下,請按實際情況修改;在編譯的時候可能會出現如下警告,對此微軟在MSDN中作了說明,並建議我們不要理會這個警告:msado15。tlh(405):warningC4146:,resultstillunsigned。
3、創建Connection對象並連接資料庫
為了首先我們需要添加一個指向Connection對象的指針_ConnectionPtrm_pConnection,下面的代碼演示了如何創建Connection對象實例及如何連接資料庫並進行異常捕捉:
BOOLCADOTest1Dlg::OnInitDialog()
{
CDialog::OnInitDialog();
HRESULThr;
try
{
hr=m_pConnection。CreateInstance("ADODB。Connection");///創建Connection對象
if(SUCCEEDED(hr))
{
hr=m_pConnection->Open("Provider=Microsoft。Jet。OLEDB。4。0;
DataSource=test。mdb","","",adModeUnknown);///連接資料庫
//上面一句中連接字串中的Provider是針對ACCESS2000環境的,對於ACCESS97,
//需要改為:Provider=Microsoft。Jet。OLEDB。3。51;
}
}
catch(_com_errore)///捕捉異常
{
CStringerrormessage;
errormessage。Format("連接資料庫失敗!\r\n錯誤信息:%s",e。ErrorMessage());
AfxMessageBox(errormessage);///顯示錯誤信息
}
在這段代碼中我們是通過Connection對象的Open方法來進行連接資料庫的,下面是該方法的原型:
HRESULTConnection15::Open(_bstr_tConnectionString,_bstr_tUserID,_bstr_tPassword,longOptions);
上述函數中參數ConnectionString為連接字串;參數UserID是用戶名;參數Password是登陸密碼;參數Options是連接選項,用於指定Connection對象對數據的更新許可權,一般情況下Options可以是如下幾個常量:
adModeUnknown:預設。當前的許可權未設置
Ⅹ 在VC++中如何從資料庫中讀取數據和向資料庫中寫入數據
#include "stdafx.h"
#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
ADOConn::ADOConn()
{
}
ADOConn::~ADOConn()
{
}
// 初始化—連接資料庫
void ADOConn::OnInitADOConn()
{
// 初始化OLE/COM庫環境
::CoInitialize(NULL);
try
{
// 創建Connection對象
m_pConnection.CreateInstance("ADODB.Connection");
// 設置連接字元串,必須是BSTR型或者_bstr_t類型
_bstr_t strConnect = "Provider=MSDASQL.1;Persist Security Info=False;User ID=***;Data Source=***;";
m_pConnection->Open(strConnect,"","",adModeUnknown);
}
// 捕捉異常
catch(_com_error e)
{
// 顯示錯誤信息
AfxMessageBox(e.Description());
}
}
// 執行查詢
_RecordsetPtr& ADOConn::GetRecordSet(_bstr_t bstrSQL)
{
try
{
// 連接資料庫,如果Connection對象為空,則重新連接資料庫
if(m_pConnection==NULL)
OnInitADOConn();
// 創建記錄集對象
m_pRecordset.CreateInstance(__uuidof(Recordset));
// 取得表中的記錄
m_pRecordset->Open(bstrSQL,m_pConnection.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText);
}
// 捕捉異常
catch(_com_error e)
{
// 顯示錯誤信息
AfxMessageBox(e.Description());
}
// 返回記錄集
return m_pRecordset;
}
// 執行SQL語句,Insert Update _variant_t
BOOL ADOConn::ExecuteSQL(_bstr_t bstrSQL)
{
// _variant_t RecordsAffected;
try
{
// 是否已經連接資料庫
if(m_pConnection == NULL)
OnInitADOConn();
// Connection對象的Execute方法:(_bstr_t CommandText,
// VARIANT * RecordsAffected, long Options )
// 其中CommandText是命令字串,通常是SQL命令。
// 參數RecordsAffected是操作完成後所影響的行數,
// 參數Options表示CommandText的類型:adCmdText-文本命令;adCmdTable-表名
// adCmdProc-存儲過程;adCmdUnknown-未知
m_pConnection->Execute(bstrSQL,NULL,adCmdText);
return true;
}
catch(_com_error e)
{
AfxMessageBox(e.Description());
return false;
}
}
void ADOConn::ExitConnect()
{
// 關閉記錄集和連接
if (m_pRecordset != NULL)
m_pRecordset->Close();
m_pConnection->Close();
// 釋放環境
::CoUninitialize();
}