社区
数据库
帖子详情
急!课程设计问题!
wushiE430
2004-04-06 09:21:27
各位大虾,
在VC的基于Dialog下怎样用CDatabase的对象和CRecordset的指针对象来连接一个叫做SerialPortApp的odbc数据源,要分哪几个步骤啊?特别是CRecordset的open函数怎么用啊?
希望大虾们把步骤写清楚一点,最好举一个实际的例子。
小弟刚刚接触数据库,并且课程设计急着交!
多谢各位大虾了!
...全文
47
4
打赏
收藏
急!课程设计问题!
各位大虾, 在VC的基于Dialog下怎样用CDatabase的对象和CRecordset的指针对象来连接一个叫做SerialPortApp的odbc数据源,要分哪几个步骤啊?特别是CRecordset的open函数怎么用啊? 希望大虾们把步骤写清楚一点,最好举一个实际的例子。 小弟刚刚接触数据库,并且课程设计急着交! 多谢各位大虾了!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
GOTO_2002
2004-04-07
打赏
举报
回复
活活,,真详细~~~
gagamazel
2004-04-07
打赏
举报
回复
// Data.cpp : implementation file
//
#include "stdafx.h"
#include "ODBCList.h"
#include "Data.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CData
IMPLEMENT_DYNAMIC(CData, CRecordset)
CData::CData(CDatabase* pdb)
: CRecordset(pdb)
{
//{{AFX_FIELD_INIT(CData)
m_ID = 0;
m_Project = _T("");
m_Task = _T("");
m_PlanCost = _T("");
m_Cost = _T("");
m_Completed = 0;
m_PersonPlanTime = 0;
m_personname = _T("");
m_nFields = 13;
//}}AFX_FIELD_INIT
m_nDefaultType = dynaset;
}
CString CData::GetDefaultConnect()
{
return _T("ODBC;DSN=task");
}
CString CData::GetDefaultSQL()
{
return _T("[taskinfo]");
}
void CData::DoFieldExchange(CFieldExchange* pFX)
{
//{{AFX_FIELD_MAP(CData)
pFX->SetFieldType(CFieldExchange::outputColumn);
RFX_Long(pFX, _T("[ID]"), m_ID);
RFX_Text(pFX, _T("[Project]"), m_Project);
RFX_Text(pFX, _T("[Task]"), m_Task);
RFX_Date(pFX, _T("[StartDate]"), m_StartDate);
RFX_Date(pFX, _T("[EndDate]"), m_EndDate);
RFX_Text(pFX, _T("[PlanCost]"), m_PlanCost);
RFX_Text(pFX, _T("[Cost]"), m_Cost);
RFX_Date(pFX, _T("[DeadLine]"), m_DeadLine);
RFX_Date(pFX, _T("[Date]"), m_Date);
RFX_Date(pFX, _T("[Time]"), m_Time);
RFX_Long(pFX, _T("[Completed]"), m_Completed);
RFX_Long(pFX, _T("[PersonPlanTime]"), m_PersonPlanTime);
RFX_Text(pFX, _T("[personname]"), m_personname);
//}}AFX_FIELD_MAP
}
/////////////////////////////////////////////////////////////////////////////
// CData diagnostics
#ifdef _DEBUG
void CData::AssertValid() const
{
CRecordset::AssertValid();
}
void CData::Dump(CDumpContext& dc) const
{
CRecordset::Dump(dc);
}
#endif //_DEBUG
gagamazel
2004-04-07
打赏
举报
回复
// ODBCListDoc.cpp : implementation of the CODBCListDoc class
//
#include "stdafx.h"
#include "ODBCList.h"
#include "ODBCListView.h" //Added by ClassView
#include "afxdb.h"
#include "Data.h"
#include "ODBCListDoc.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CODBCListDoc
IMPLEMENT_DYNCREATE(CODBCListDoc, CDocument)
BEGIN_MESSAGE_MAP(CODBCListDoc, CDocument)
//{{AFX_MSG_MAP(CODBCListDoc)
// NOTE - the ClassWizard will add and remove mapping macros here.
// DO NOT EDIT what you see in these blocks of generated code!
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CODBCListDoc construction/destruction
CODBCListDoc::CODBCListDoc()
{
// TODO: add one-time construction code here
}
CODBCListDoc::~CODBCListDoc()
{
}
BOOL CODBCListDoc::OnNewDocument()
{
if (!CDocument::OnNewDocument())
return FALSE;
// TODO: add reinitialization code here
// (SDI documents will reuse this document)
//获取视图类的指针:
POSITION pos;
pos=GetFirstViewPosition();
CODBCListView * pView;
pView=(CODBCListView*)GetNextView(pos);
//设置视图类的记录集对象:
pView->SetRecordset(&m_Data);
return TRUE;
}
/////////////////////////////////////////////////////////////////////////////
// CODBCListDoc serialization
void CODBCListDoc::Serialize(CArchive& ar)
{
if (ar.IsStoring())
{
// TODO: add storing code here
}
else
{
// TODO: add loading code here
}
}
/////////////////////////////////////////////////////////////////////////////
// CODBCListDoc diagnostics
#ifdef _DEBUG
void CODBCListDoc::AssertValid() const
{
CDocument::AssertValid();
}
void CODBCListDoc::Dump(CDumpContext& dc) const
{
CDocument::Dump(dc);
}
#endif //_DEBUG
/////////////////////////////////////////////////////////////////////////////
// CODBCListDoc commands
showjancn
2004-04-06
打赏
举报
回复
到www.vckbase.com中去找
一定有你想要的东本!!!!
(要不你把那的VC杂志全下载下来,以前我在上面看过有比较精典的)
Python获取列表中的最后一个或者倒数第几个的方案
print(members[3]) 灵魂所在“- (负号)” 我们先来创建一个列表,和php中的数组一样。 members = ['张三','李四','王五','芳芳','小明','小王'] 按照正常的方法,我们要取出第几个值,那么我们只需在知道他的索引即可,Python的索引从0开始 下面我们取出第一个用户的名称 print(members[0...
Prolog 列表练习 1.
转载自:https://mp.weixin.qq.com/s/tkoV2byIhCCP1b-kOMmkeg 1、获取列表中的最后一个元素 my_last(X,[X]).%是最后一个元素则合一 my_last(X,[_|L]) :-%X是列表L的最后一个元素 my_last(X,L).%如果不是最后一个元素继续递归 运行效果如下: ?- my_last(A, [a,b,c,d,e,f,g]). A = g ; ; false. 2、获取列表的倒数...
js数组再倒数第二个添加元素_【JS】JS数组添加元素的三种方法
正文1、push()方法可向数组的末尾添加一个或多个元素,并返回新的长度。1)、语法:arrayObject.push(newelement1,newelement2,....,newelementX)参数描述newelement1必需。要添加到数组的第一个元素。newelement2可选。要添加到数组的第二个元素。newelementX可选。可添加多个元素。2)、返回值:把指定的值添加到数组后...
go 判断元素是否在slice_P12|判断列表中元素是否相等的几种方法
title: P12|判断列表中元素是否相等的几种方法author: Adolph Leecategories: 编程基础tags:Python基础列表集合索引题目 判断列表中所有元素是否相等要求: 自定义一个函数,用于检测列表中的元素是否相等 函数输入参数:列表 函数输出参数:布尔值方法一: 列表的索引从零开始 列表的最后一个元素索引为负一 列表的索引区间为左闭右开区间# 利用集...
【python】列表元素统计
文章目录【python】列表元素统计一、原始数据长的样子二、方法一:使用标准 Python库三、方法二:使用pandas 【python】列表元素统计 一、原始数据长的样子 目标: 对list中的数据进行统计(其实就是对相同元素的数据进行一个统计) 方法: 方法一: 使用标准 Python库 方法二: 使用 pandas 二、方法一:使用标准 Python库 def get_counts(sequence): counts = {} for x in sequence:
数据库
4,017
社区成员
39,806
社区内容
发帖
与我相关
我的任务
数据库
VC/MFC 数据库
复制链接
扫一扫
分享
社区描述
VC/MFC 数据库
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章