标题:[求助]关于odbc连接数据库的疑问
只看楼主
jasen1982
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2007-5-30
 问题点数:0 回复次数:2 
[求助]关于odbc连接数据库的疑问

各位大虾:
我是菜鸟
问个基础问题
这是从网上看到的

本文以ACESS97为例,采用ODBC方式打开数据库Photo,数据库Photo的images表中含有一个image的图像字段,在刚打开时显示第一条记录。存取操作时关键是确定数据的长度,读数据操作时图像数据可以从记录集的图像字段对应的长二进制成员变量m_Image的成员m_hData得到,这个句柄变量存放分配给图像字段的数据,该对象的另一个成员变量m_dwDataLength为该字段的实际长度,在某些情况下,m_dwDataLength的值有可能小于m_hData中的数据长度值。具体内容可以参考MSND。以下实现的部分关键代码。首先请看 CdbImages记录集的定义:


CdbImages::CdbImages(CDatabase* pdb)
: CRecordset(pdb)
{
//{{AFX_FIELD_INIT(CdbImages)
m_nFields = 2;//数据库中有两个字段
//}}AFX_FIELD_INIT
m_nDefaultType = snapshot;//数据库以快照形式打开
}
CString CdbImages::GetDefaultConnect()
{
return _T("ODBC;DSN=MS Access Database");//以ODBC操作数据库
}
CString CdbImages::GetDefaultSQL()
{
return _T("[Images]");//默认的操作是连接到数据库中的Images表
}
void CdbImages::DoFieldExchange(CFieldExchange* pFX)
{
//{{AFX_FIELD_MAP(CdbImages)
pFX-> SetFieldType(CFieldExchange::outputColumn);
RFX_LongBinary(pFX, _T("[Image]"), m_Image);//记录集中的成员对象和表中的OLE字段采用长二进制交换。
//}}AFX_FIELD_MAP
}


我的问题是:红色标记的代码应该放在c++生成的哪个文件中?



谢谢!




[此贴子已经被作者于2007-6-13 10:24:17编辑过]

搜索更多相关主题的帖子: odbc 数据库 疑问 
2007-06-13 10:23
zwl80411
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2007-6-14
得分:0 

如果你用VC中 MFC(APPWIARD),可以在建CRecordView的派生类时自动生成.

2007-06-14 15:59
xuanot
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2007-6-15
得分:0 
App的初始化中
2007-06-16 15:33



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-147061-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.101173 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved