SQL Server数据库在VC环境下的链接使用

                               SQL Server数据库在VC环境下的链接使用

 这里是使用的VC++6.0环境,主要分为一下几步:

     一:随便在对话框里拉一个List Contrl 然后初始化,引入第三方类 ado.cpp 和ado.h,这里要注意的是库的引入,一

            般程序在ado.h里生成的是

             #import "C:\Program Files\Common Files\System\ADO\msado15.dll" rename("EOF", "EndOfFile")

             #import "C:\Program Files\Common Files\System\ado\MSJRO.DLL" no_namespace

            但可能会有问题,这个文件明明存在,可是编译过不了说没有
,比较郁闷,我的解决办法是,自己在程序的目录

            下建个文件夹,然后放入这两个路径,然后在引入(有时候能成功,有时候也不行,多试几次)

     二:由于整个程序都要访问所连接的数据库,故我们在*APP.h类里定义数据库链接对象:

                    static CADODatabase    m_DB;   //别忘了引入头文件#include "*/ado.h"

             在*APP.cpp的初始化里加入:

//连接数据库
	CString strConnect = _T("Provider=sqloledb;Data Source=PC201404210742\\SQLSERVER;"
		"Initial Catalog=EmpDBs;"
		"User Id=sa;Password=dong123;");
	if (!m_DB.Open((LPCTSTR)strConnect))
	{
		return FALSE;
	}

     三:写一个收集信息的函数GetEmployeeInfo();

           

void CMFC0524Dlg::GetEmployeeInfo()
{
	CString strSql = _T("select * from tbEmployee order by Eid");
	//记录集
	CADORecordset Rs(&CMFC0524App::m_DB);		//由于每个类都要访问m_DB,故定义在CMFC0524APP类里了

	//打开记录集
	if(Rs.Open((LPCTSTR)strSql))
	{
		CString	strField;
		int nRow = 0;
		while(!Rs.IsEOF())		//一条一条的读取sql语句执行的结果(记录集)
		{
			Rs.GetFieldValue(_T("Eid"),strField);
			m_ltcInfo.InsertItem(nRow,strField);

			Rs.GetFieldValue(_T("Ename"),strField);
			m_ltcInfo.SetItemText(nRow,1,strField);
			
			Rs.GetFieldValue(_T("Gender"),strField);
			m_ltcInfo.SetItemText(nRow,2,strField);
			
			Rs.GetFieldValue(_T("Age"),strField);
			m_ltcInfo.SetItemText(nRow,3,strField);
			
			Rs.GetFieldValue(_T("Did"),strField);
			m_ltcInfo.SetItemText(nRow,4,strField);
			
			
			Rs.GetFieldValue(_T("Wid"),strField);
			m_ltcInfo.SetItemText(nRow,5,strField);
			
			
			//移动记录指针
			Rs.MoveNext();
			
			nRow++;
		}
		//关闭记录集
		Rs.Close();
	}
}


  

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值