oracle10g C++ MFC开发学生管理信息系统(基于对话框、VC6.0环境)

来源:互联网 发布:若尔盖网店美工招聘 编辑:程序博客网 时间:2024/05/17 01:01

首先利用oracle10g创建一个数据库,在vc中建立一个对话框的工程s_m,在左侧工作空间的ClassView中,点击s_m classes,右键,选择New Class,创建一个操作数据库的类link,里面包含数据库的连接,以及相关操作。在Class Type中选择Generic Class,在工作空间的FileView中找到link.h ,将其改成如下:

class link 
{
public:
 link();
 virtual ~link();
 _ConnectionPtr m_pConnection;
 _RecordsetPtr m_pRecordset;
 bool ExecuteSQL(_bstr_t bstrSQL);

 void OnInitADOConn();
 _RecordsetPtr& GetRecordSet(_bstr_t bstrSQL);
};

在link.cpp中实现函数如下:

link::link()
{
 
}

link::~link()
{

}
void link::OnInitADOConn()
{
 ::CoInitialize(NULL);
 try
 {
  m_pConnection.CreateInstance("ADODB.Connection");
  char strConnect[]="Provider=MSDAORA.1;DataSource=yanghaha;Password=haohaizi;User ID=system;Persist Security Info=True";
  m_pConnection->Open(strConnect,"","",adModeUnknown);
  AfxMessageBox("连接成功");
 }
 catch(_com_error e)
 {
  AfxMessageBox(e.Description());
 }
}
bool link::ExecuteSQL(_bstr_t bstrSQL)
{
 _variant_t RecordsAffected;
 try
 {
  if(m_pConnection==NULL)
   OnInitADOConn();
     m_pConnection->Execute(bstrSQL,NULL,adCmdText);
  return true;
 }
 catch(_com_error e)
 {
  e.Description();
  return false;
 }
}
_RecordsetPtr& link::GetRecordSet(_bstr_t bstrSQL)
{
 try
 {
  if(m_pConnection==NULL)
   OnInitADOConn();
  m_pRecordset.CreateInstance(__uuidof(Recordset));
  m_pRecordset->Open(bstrSQL,m_pConnection.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText);
 }
 catch(_com_error e)
 {
  e.Description();
 }
 return m_pRecordset;
}

添加对话框的方法为:

在工具栏中选择“插入”---->“资源”------>Dialog----->N新建,这样就插入了一个对话框了,在对话框的任意位置右键,选择属性,可以修改该对话的名字/ID等属性,向对话框添加相关的控件(你想添加什么就添加什么),然后同时按下Ctrl和W为对话框添加一个类,确定之后在Member Variables中对需要设置变量的控件添加相关变量(变量的主要作用是接收从对话框传来的数据),未完。。。。。

0 0
原创粉丝点击