主题:用vc如何作数据库?
yaya306
[专家分:0] 发布于 2002-10-05 12:24:00
用vc如何作数据库?
回复列表 (共7个回复)
沙发
pp [专家分:0] 发布于 2002-10-06 14:31:00
用vc作数据库比较麻烦,你如果不是必须用VC的话可以用VB作。
VC中DAO的数据库编程比较简单,不过用ADO编程灵活性更大,功能更强,DAO编程如下:
CDaoDatabase* m_pDatabase;
CDaoTableDef* m_pTableDef;
CDaoRecordset* m_pRecordset;
//PP:打开数据库
BOOL CTable::OpenTable()
{
if(m_pDatabase == NULL)
{
AfxMessageBox("error");
return false;
}
if (!m_pDatabase->IsOpen())
{
try
{
m_pDatabase->Open(m_DataBaseName);
}
catch(CDaoException* e)
{
e->ReportError();
delete m_pDatabase;
m_pDatabase = NULL;
e->Delete();
return false;
}
}
try
{
m_pTableDef->Open(m_TableName);
m_pRecordset->Open(m_pTableDef,dbOpenDynaset);
}
catch(CDaoException* e)
{
e->ReportError();
delete m_pTableDef;
m_pTableDef = NULL;
e->Delete();
return false;
}
return true;
}
//PP:获得纪录
COleVariant OV;
OV.vt = VT_BSTR;
m_pRecordset->GetFieldValue("Name", OV);
ParamInfo.ParamName = OV.pbVal;
//PP:关闭数据库
void CTable::TableClose()
{
if(m_pRecordset!=NULL)
{
if(m_pRecordset->IsOpen())
m_pRecordset->Close();
delete m_pRecordset;
m_pRecordset = NULL;
}
if(m_pTableDef!=NULL)
{
if(m_pTableDef->IsOpen())
m_pTableDef->Close();
delete m_pTableDef;
m_pTableDef = NULL;
}
if(m_pDatabase!=NULL)
{
if(m_pDatabase->IsOpen())
m_pDatabase->Close();
delete m_pDatabase;
m_pDatabase = NULL;
}
}
板凳
power_easy [专家分:0] 发布于 2002-11-13 13:08:00
用C++做数据库太复杂,为什么不用CB或DEPHIEL
3 楼
hua111 [专家分:0] 发布于 2002-11-22 20:56:00
为何不用ODBC呢这个很简单
但我不知道怎样去查询
4 楼
hua111 [专家分:0] 发布于 2002-11-22 20:56:00
为何不用ODBC呢这个很简单
但我不知道怎样去查询
5 楼
lkdd [专家分:0] 发布于 2004-05-20 23:29:00
//vb 作起来很简单的.
只要配置好ODBC数据源就行.//
6 楼
zxj818 [专家分:0] 发布于 2004-05-22 11:47:00
用ODBC做数据库,可移植性比较差
其实使用vc开发数据库很简单,尤其是ADO操作数据库是目前数据库编程的主流
如果感兴趣可与我联系
zxj818@163.net
qq 33172003
7 楼
chainengjie [专家分:410] 发布于 2004-05-24 01:37:00
是呀,用odbc做数据库是很方便,不过关于用odbc的查询的代码的书籍基本上很少,我在做毕业设计的时候就遇上这个问题
我来回复