怎么样让数据库信息在VC 6.0上显示 5

怎么样让数据库信息在VC6.0上显示,数据库与VC已经实现连接了,就是不知道怎么让它显示.是不是还要写SQL语句,如有源代码小弟不胜感激,小弟对代码方面还很差火候,小弟新... 怎么样让数据库信息在VC 6.0上显示,数据库与VC 已经实现连接了,就是不知道怎么让它显示. 是不是还要写SQL语句, 如有源代码小弟不胜感激,小弟对代码方面还很差火候,
小弟新手 恳求各位大哥帮忙 急急急...............息在VC 6.0上显
展开
 我来答
TopE44
2010-09-01
知道答主
回答量:30
采纳率:0%
帮助的人:10.1万
展开全部
用 ADO 或者 ODBC ...连接数据库不是你直接放上去就能用的,具体怎么做 无能为力 多找找资料 学习学习
guanli22003
2010-09-01 · 超过10用户采纳过TA的回答
知道答主
回答量:80
采纳率:0%
帮助的人:33.4万
展开全部
这个啊,用一个叫做listbox的控件。 然后用ADO连接,这是常用的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
qiufeng1100
2010-09-05 · TA获得超过422个赞
知道小有建树答主
回答量:332
采纳率:20%
帮助的人:141万
展开全部
代码如下:
CoInitialize(NULL);//初始化服务
_ConnectionPtr con(__uuidof(Connection));//定义用于连接的变量
_RecordsetPtr re(__uuidof(Recordset));//定义用于存放结果集的变量

con->ConnectionString = "Provider=SQLOLEDB.1;Password=/*你的2005数据库密码*/;Persist Security Info=True;User ID=sa;Initial Catalog=/*数据库名*/;Data Source=/*数据库系统名字*/";

try
{
try
{
con->Open("" , "" , "" , -1);//连接数据库
}
catch(...)//连接失败处理
{
MessageBox("……" , "错误!");
}
re = con->Execute("select * from student" , NULL , adCmdText);//用连接变量执行SQL语句,并将结果赋给结果集
while(!re->REEOF)//是否结束
{
CString str;
str.Format("%s " ,
(char *)(_bstr_t)re->GetCollect("数据表列名"));//得到列值

try
{
((CListBox *)GetDlgItem(IDC_LIST))->AddString(str);//将列值添加入列表控件里
}
catch(...)
{
MessageBox("……", "错误!");
}
re->MoveNext();//指向下一个节点
}
re->Close();//关闭结果集
con->Close();//亲闭连接通
}
catch(...)
{
MessageBox("……", "错误!");
}
con.Release();//释放连接变量
re.Release();//释放结果集
CoUninitialize();//关闭服务

以上是用于从数据表得到数据并显示于一个列表控件的代码。
可以看一下孙鑫的关于VC的教程第二十章,当时我也是看他的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
java18
2010-09-06
知道答主
回答量:3
采纳率:0%
帮助的人:4211
展开全部
比较简单的办法是用控件:
放置ADO,和DataGrid控件,通过设置控件的属性即可连接数据库,并显示的在dataGrid中。
以上,仅供初学学习连接数据库使用。最好还是自己写一个类,比较灵活。
祝顺利!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
沉默_颓废
2010-09-11 · 超过33用户采纳过TA的回答
知道答主
回答量:110
采纳率:0%
帮助的人:95.6万
展开全部

我毕业设计就是这个内容,不过我现在在外面  如果有时间今天晚上发给你 我做的东西在我的电脑上 我是用ado连的数据库 

//数据库的封装

void ADOConn::OnInitADOConn()

{

    ::CoInitialize(NULL);

 try{

     m_pConnection.CreateInstance("ADODB.Connection");

  _bstr_t strConnect="Provider=MSDASQL.1;Persist Security Info=False;Data Source=PersonnelManagementDS";

  m_pConnection->Open(strConnect,"","",adModeUnknown);

 }

 catch(_com_error e)

 {

     AfxMessageBox(e.Description());

 }

}

bool ADOConn::ExecuteSQL(_bstr_t strSQL)

{

    try{

     if(m_pConnection==NULL)

   OnInitADOConn();

         m_pConnection->Execute(strSQL,NULL,adCmdText);

   return true;

 }

 catch(_com_error e)

 {

      AfxMessageBox(e.Description());

   return false;

 }    

}

void ADOConn::ExitConnect()

{

    if(m_pRecordset!=NULL)

  m_pRecordset->Close();

 m_pConnection->Close();

 ::CoUninitialize();

}

CString ADOConn::GetFieldValue(CString Field)

{

    CString sValue;

 _variant_t value;

 value=m_pRecordset->GetCollect((_bstr_t)Field);

 if(value.vt==VT_EMPTY ||value.vt==VT_NULL)

  sValue="";

 else

 {

  sValue=(char*)(_bstr_t)value;

  sValue.TrimRight();

  sValue.TrimLeft();

 }

 return sValue;

}

int ADOConn::GetRecordCount()

{

    int nCount=0;

 try{

  m_pRecordset->MoveFirst();

 }

 catch(...)

 {

  return 0;

 }

 if(m_pRecordset->_EOF)

  return 0;

 while (!m_pRecordset->_EOF)

 {

  m_pRecordset->MoveNext();

  nCount=nCount+1; 

 }

 m_pRecordset->MoveFirst();

 return nCount;

}

_RecordsetPtr& ADOConn::GetRecordset(_bstr_t strSQL)

{

    try{

     if(m_pConnection==NULL)

   OnInitADOConn();

  m_pRecordset.CreateInstance(_uuidof(Recordset));

        m_pRecordset->Open(strSQL,m_pConnection.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText);

     }

 catch(_com_error e)

 {

    AfxMessageBox(e.Description());

 }

 return m_pRecordset;

}

//显示数据,用listctrl控件

void DCommodityDlg::RefreshList()

{

    m_list.DeleteAllItems();

 CString strSQL;

 strSQL.Format("select * from commodityinfo");

 ado.GetRecordset((_bstr_t)strSQL);

 int count=ado.GetRecordCount();

 for(int i=0;i<count;i++)

 {

    CString temp;

    temp=ado.GetFieldValue("commodity_id");

    m_list.InsertItem(i,temp);

    temp=ado.GetFieldValue("commodity_name");

    m_list.SetItemText(i,1,temp);

    temp=ado.GetFieldValue("commodity_place");

    m_list.SetItemText(i,2,temp);

    temp=ado.GetFieldValue("commodity_purchase");

    m_list.SetItemText(i,3,temp);

    temp=ado.GetFieldValue("commodity_sale");

    m_list.SetItemText(i,4,temp);

       ado.MoveNext();

 }

}

void DCommodityDlg::ResetButton()

{

    m_id.EnableWindow(false);

 m_name.EnableWindow(false);

 m_specification.EnableWindow(false);

 m_public.EnableWindow(false);

 m_unit.EnableWindow(false);

 m_produce.EnableWindow(false);

 m_purchase.EnableWindow(false);

 m_sale.EnableWindow(false);

    

 m_Edit.EnableWindow(true);

    m_Add.EnableWindow(true);

 m_Delete.EnableWindow(true);

 m_Confirm.EnableWindow(false);

 m_Cancel.EnableWindow(false);

}

BOOL DCommodityDlg::OnInitDialog() 

{

 CDialog::OnInitDialog();

 m_list.InsertColumn(0,"产品ID");

    m_list.InsertColumn(1,"产品名");

 m_list.InsertColumn(2,"出版社");

 m_list.InsertColumn(3,"进货价格");

 m_list.InsertColumn(4,"销售价格");

 RECT rectList;

 m_list.GetWindowRect(&rectList);

 int wid=rectList.right-rectList.left-4;

 for(int i=0;i<5;i++)

    m_list.SetColumnWidth(i,wid/5);

 m_list.SetExtendedStyle(LVS_EX_FULLROWSELECT);

 RefreshList(); 

 ResetButton();  

 return TRUE;  

}

有不懂的在联系  这个是我做的毕业设计的内容

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式