学习VC++深入浅出——ODBC编程
来源:互联网 发布:2016淘宝双十一数据 编辑:程序博客网 时间:2024/06/06 15:41
学习VC++深入浅出——ODBC编程
try
...{
m_TestSet.Open(CRecordset::snapshot,NULL);
}
catch(CDBException *e)
...{
MessageBox("未能打开客户信息库!");
e->Delete();
PostMessage(WM_QUIT);
return false;
}
return TRUE; // return TRUE unless you set the focus to a control
}
class CTestSet : public CRecordset
...{
public:
CTestSet(CDatabase* pDatabase = NULL);
DECLARE_DYNAMIC(CTestSet)
// Field/Param Data
//{{AFX_FIELD(CTestSet, CRecordset)
CString m_ID;
CString m_name;
long m_age;
//}}AFX_FIELD
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CTestSet)
public:
virtual CString GetDefaultConnect(); // Default connection string
virtual CString GetDefaultSQL(); // Default SQL for Recordset
virtual void DoFieldExchange(CFieldExchange* pFX); // RFX support
//}}AFX_VIRTUAL
// Implementation
#ifdef _DEBUG
virtual void AssertValid() const;
virtual void Dump(CDumpContext& dc) const;
#endif
};
IMPLEMENT_DYNAMIC(CTestSet, CRecordset)
CTestSet::CTestSet(CDatabase* pdb)
: CRecordset(pdb)
...{
//{{AFX_FIELD_INIT(CTestSet)
m_ID = _T("");
m_name = _T("");
m_age = 0;
m_nFields = 3;
//}}AFX_FIELD_INIT
m_nDefaultType = snapshot;
}
CString CTestSet::GetDefaultConnect()
...{
return _T("ODBC;DSN=test");
}
CString CTestSet::GetDefaultSQL()
...{
return _T("[dbo].[Person]"/**//*"[dbo].[Studnet]"*/);
}
void CTestSet::DoFieldExchange(CFieldExchange* pFX)
...{
//{{AFX_FIELD_MAP(CTestSet)
pFX->SetFieldType(CFieldExchange::outputColumn);
RFX_Text(pFX, _T("[ID]"), m_ID);
RFX_Text(pFX, _T("[name]"), m_name);
RFX_Long(pFX, _T("[age]"), m_age);
//}}AFX_FIELD_MAP
}
/**//////////////////////////////////////////////////////////////////////////////
// CTestSet diagnostics
#ifdef _DEBUG
void CTestSet::AssertValid() const
...{
CRecordset::AssertValid();
}
void CTestSet::Dump(CDumpContext& dc) const
...{
CRecordset::Dump(dc);
}
#endif //_DEBUG
void CTestODBCDlg::OnButtonInquiry()
...{
// TODO: Add your control notification handler code here
if(!m_TestSet.IsEOF())
...{
m_Age = m_TestSet.m_age;
m_ID = m_TestSet.m_ID;
m_Name = m_TestSet.m_name;
}
UpdateData(false);
}
void CTestODBCDlg::OnBtnInput()
...{
// TODO: Add your control notification handler code here
if(!m_TestSet.IsEOF())
...{
m_TestSet.m_age=m_Age;
m_TestSet.m_ID=m_ID;
m_TestSet.m_name=m_Name;
}
UpdateData();
}
...{
m_TestSet.Open(CRecordset::snapshot,NULL);
}
catch(CDBException *e)
...{
MessageBox("未能打开客户信息库!");
e->Delete();
PostMessage(WM_QUIT);
return false;
}
return TRUE; // return TRUE unless you set the focus to a control
}
class CTestSet : public CRecordset
...{
public:
CTestSet(CDatabase* pDatabase = NULL);
DECLARE_DYNAMIC(CTestSet)
// Field/Param Data
//{{AFX_FIELD(CTestSet, CRecordset)
CString m_ID;
CString m_name;
long m_age;
//}}AFX_FIELD
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CTestSet)
public:
virtual CString GetDefaultConnect(); // Default connection string
virtual CString GetDefaultSQL(); // Default SQL for Recordset
virtual void DoFieldExchange(CFieldExchange* pFX); // RFX support
//}}AFX_VIRTUAL
// Implementation
#ifdef _DEBUG
virtual void AssertValid() const;
virtual void Dump(CDumpContext& dc) const;
#endif
};
IMPLEMENT_DYNAMIC(CTestSet, CRecordset)
CTestSet::CTestSet(CDatabase* pdb)
: CRecordset(pdb)
...{
//{{AFX_FIELD_INIT(CTestSet)
m_ID = _T("");
m_name = _T("");
m_age = 0;
m_nFields = 3;
//}}AFX_FIELD_INIT
m_nDefaultType = snapshot;
}
CString CTestSet::GetDefaultConnect()
...{
return _T("ODBC;DSN=test");
}
CString CTestSet::GetDefaultSQL()
...{
return _T("[dbo].[Person]"/**//*"[dbo].[Studnet]"*/);
}
void CTestSet::DoFieldExchange(CFieldExchange* pFX)
...{
//{{AFX_FIELD_MAP(CTestSet)
pFX->SetFieldType(CFieldExchange::outputColumn);
RFX_Text(pFX, _T("[ID]"), m_ID);
RFX_Text(pFX, _T("[name]"), m_name);
RFX_Long(pFX, _T("[age]"), m_age);
//}}AFX_FIELD_MAP
}
/**//////////////////////////////////////////////////////////////////////////////
// CTestSet diagnostics
#ifdef _DEBUG
void CTestSet::AssertValid() const
...{
CRecordset::AssertValid();
}
void CTestSet::Dump(CDumpContext& dc) const
...{
CRecordset::Dump(dc);
}
#endif //_DEBUG
void CTestODBCDlg::OnButtonInquiry()
...{
// TODO: Add your control notification handler code here
if(!m_TestSet.IsEOF())
...{
m_Age = m_TestSet.m_age;
m_ID = m_TestSet.m_ID;
m_Name = m_TestSet.m_name;
}
UpdateData(false);
}
void CTestODBCDlg::OnBtnInput()
...{
// TODO: Add your control notification handler code here
if(!m_TestSet.IsEOF())
...{
m_TestSet.m_age=m_Age;
m_TestSet.m_ID=m_ID;
m_TestSet.m_name=m_Name;
}
UpdateData();
}
- 学习VC++深入浅出——ODBC编程
- 学习VC++深入浅出——ODBC编程
- 学习VC++深入浅出——网络通讯编程
- 学习VC++深入浅出——组件编程
- 学习VC++深入浅出——绘图操作
- VC++ ODBC编程
- ODBC 数据库编程(VC)
- VC++下ODBC的编程
- VC 数据库编程 ODBC基本概念
- 学习VC++深入浅出——状态栏的设置
- 学习VC++深入浅出——匿名管道的使用
- 学习VC++深入浅出——命名管道的使用
- 学习VC++深入浅出——剪贴板的使用
- 学习VC++深入浅出——钩子的使用
- 学习VC++深入浅出——DLL的使用
- 学习VC++深入浅出——常用对话框的操作
- 学习VC++深入浅出——ADO的使用
- 学习VC++深入浅出——ADO的使用
- 学习VC++深入浅出——组件编程
- 对于log4j的深层次的理解
- FASM练习代码
- 什么是ISAPI?
- 重新设置 WSAD 5.X Workspace
- 学习VC++深入浅出——ODBC编程
- 在ASP.NET页面中实现数据棒图
- 【残文】假日怨念-充满【哔--】和【哔--】的早晨...
- C函数:_open, _wopen
- 学习VC++深入浅出——ADO的使用
- Hibernate容器映射-->Set
- java--des加密解密
- 一部让大学生少奋斗10年的成功宝典
- php中如何des加密解密