Chinaunix首页 | 论坛 | 博客
  • 博客访问: 465785
  • 博文数量: 724
  • 博客积分: 40000
  • 博客等级: 大将
  • 技术积分: 5010
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-13 14:47
文章分类

全部博文(724)

文章存档

2011年(1)

2008年(723)

我的朋友

分类:

2008-10-13 17:07:13

tttk:非常不错。我刚开始学VC,此文章对我受益匪浅。另外,提供一个源代码的行为非常善解人意。
祝网站越办越好。

(发表于2002-4-16 13:21:00)

xxx:so good!
(发表于2002-4-22 12:48:00)

zwcboy:请问如何对vfp中的dbf表操作?dbf可以在access中打开。我将test.mdb改为我的test.dbf,可是报
{"连接数据库失败!
         错误信息:未指定的错误"}
这是为什么?

(发表于2002-4-22 16:31:00)

cbh:写得很好的文章,但按文中方法连接我的mysql数据库,却不能成功,提示

连接数据库失败!
         错误信息:未指定的错误

我是用的"不通过DSN对SQL SERVER数据库进行连接"

而得到如上错误的,如果使用 通过DSN数据源对任何支持ODBC的数据库进行连接:

就能成功连接上,不知为什么,如何使用ado连接上 mysql 远程数据库??难道有别的语法可以连上去吗,请作者能提供,谢谢 chineseinfo@alibaba.com

(发表于2002-4-25 14:54:00)

陈炳华:连接到远程的mysql数据库应该这样连接才行

HRESULT hr;
try
{
hr = m_pConnection.CreateInstance("ADODB.Connection");///创建Connection对象
if(SUCCEEDED(hr))
{
hr = m_pConnection->Open("driver={mySQL};Server=127.0.0.1;Port=3306;Option=131072;Stmt=;DATABASE=data;UID=user;PWD=pwd","","",adModeUnknown);///连接数据库
///上面一句中连接字串中的Provider是针对ACCESS2000环境的,对于ACCESS97,需要改为:Provider=Microsoft.Jet.OLEDB.3.51;  }
}
}
catch(_com_error e)///捕捉异常
{
CString errormessage;
errormessage.Format("连接数据库失败!\r\n错误信息:%s",e.ErrorMessage());
AfxMessageBox(errormessage);///显示错误信息
return FALSE;
(发表于2002-5-5 23:02:00)

交友:如何在VC++尊敬的先生/女士: 
你好! 
虚心请教如何在VC++6.0中连接并打开服务器上的Oracle数据库。(  cqx2002@eyou.com  ) 
一定重谢!
(发表于2002-5-12 9:40:00)

zlfpeak:为什么我的access程序改道sql server后,recordcount变成了-1
(发表于2002-6-25 16:25:00)

acpeng@sohu.com:各位大虾:
    我们用VC6.0开发一个程序时,用ado访问SQLserver数据库,但在用Recordset执行AddNew()和Update()时,总是产生错误,比如:
  Item cannot be found in the collection correspending tothe requested name or ordinal.
不知是何故?前几天调试还什么问题都没有,今天就.......
      各位给个主意吧。
(发表于2002-7-3 17:41:00)

xyrhyh:文章简明扼要,但又清楚明了。我虽是菜鸟,不过也可以一看就懂,作者应该是位好老师!谢谢!!!
(发表于2002-7-14 20:55:00)

马达:真的谢谢您!!!
(发表于2002-7-22 12:42:00)

ccc:真的谢谢您!!!
但你的程序在删除所有数据时报错,请问问题在哪里,如何改呢?
(发表于2002-7-23 7:53:00)

Dream:我想在程序中采用DBGrid(非绑定模式),但有很多故障,以下是DBGrid读记录集中记录的代码,运行时在BOF,AdoEOF或者被删除的记录处出现错误,不知能否为我指点迷津。或者给我一些关于DBGrid和DataGrid的相关资料和例程,不胜感激!(Email:higaer@163.com)
void CDBGridDemo5View::OnUnboundReadDataDbgrid1(LPDISPATCH RowBuf, VARIANT FAR* StartLocation, BOOL ReadPriorRows) 
{// TODO: Add your control notification handler code here

RowBuffer buf(RowBuf); 
VARIANT varbok
varbok.vt=VT_ARRAY | VT_UI1
long Row,RowsFetched;
VARIANT var ;RowsFetched=0;
if(StartLocation->vt==VT_NULL){ if(ReadPriorRows){
try{ theApp.m_recordSet->MoveLast();}
catch (_com_error &e){  GenerateError(e.Error(), e.Description()); } }
else{ try{ theApp.m_recordSet->MoveFirst();}catch (_com_error &e){ GenerateError(e.Error(), e.Description()); } }}
else{// Find the position to start reading based on the
// StartLocation bookmark and ReadPriorRows parameter
}
(发表于2002-7-29 16:34:00)

Dream:try{ VectorFromBstr(StartLocation->bstrVal,&varbok.parray); theApp.m_recordSet->put_Bookmark(varbok); if(ReadPriorRows)theApp.m_recordSet->MovePrevious(); else theApp.m_recordSet->MoveNext(); } catch (_com_error &e){ GenerateError(e.Error(), e.Description()); } } // Transfer data from our data set array to the RowBuf 
// object which DBGrid uses to display the data
for(Row = 0; Row if(theApp.m_recordSet->AdoEOF||theApp.m_recordSet->BOF)break;
var.vt=VT_BSTR;
var.bstrVal=_bstr_t(theApp.m_recordSet->GetCollect(_variant_t("年度")));
if(buf.GetColumnCount()>0)buf.SetValue(Row, 0,var);
for(short iField=1;iField<6;iField++)
{      COleVariant oleVal(theApp.m_recordSet->GetCollect(_variant_t(iField)));
     var=*((LPVARIANT)oleVal);
     if(buf.GetColumnCount()>iField)buf.SetValue(Row, iField,var);
}

(发表于2002-7-29 16:35:00)

Dream:

// Set bookmark using CurRow which is also our
// array index
// BstrFromVector(((LPVARIANT)theApp.m_recordSet->get_Bookmark())->parray,&var.bstrVal);
var.vt=VT_BSTR;
theApp.m_recordSet->get_Bookmark(&var);
buf.SetBookmark(Row,var);
RowsFetched++;
if(ReadPriorRows)theApp.m_recordSet->MovePrevious();
else theApp.m_recordSet->MoveNext();
}
buf.SetRowCount(RowsFetched);


(发表于2002-7-29 16:36:00)

林因:对不起,请问应该创建什么工程?
我的意思是,我要从头来写一遍这个程序,怎么开始,具体应该怎么做?
谢谢!
(发表于2002-8-7 14:20:00)

jd2bs:请问为什么我用了所有的方法:jet,dsn,sql server连接却统统不能连上呢??

提示
连接数据库失败!
错误信息:未指定的错误



(发表于2002-8-9 10:32:00)

toneyji:各位大虾帮忙:
  我用ADO访问sqlserver数据库,在recordset时出错, 运行出现Idispatch error #3149是什么意思?请不吝赐教
(发表于2002-9-5 19:37:00)

etone8848:文章内容确是简明,但不知作者发现没有,源码程序在2000server环境下编译而后在W98下执行会失败!,执行到MyRecordset->Open(.....)为止,如果可能的话请指教!
(发表于2002-9-6 11:52:00)

g:t
(发表于2002-9-9 20:14:00)

zengquansheng:错误Idispatch error #3149如何解决?请不吝赐教
请回复:zengquansheng@163.com
(发表于2002-11-14 9:04:00)

yu_Vc:我的代码如下:void CCEgsView::OnInitialUpdate()
{
CListView::OnInitialUpdate();
    if (!AfxOleInit())
{
AfxMessageBox("ole 初始化错误");
}
    HRESULT hr;
_bstr_t source("Driver=SQL Server;Server=AHMTFWQ;Uid=sa;Pwd=;database=gsxd");
    _bstr_t user("yxz");
_bstr_t pwd("");
try{hr=m_connection.CreateInstance(__uuidof(Connection));
   if(SUCCEEDED(hr))
         hr=m_connection->Open(source,user,pwd,16);
       if(SUCCEEDED(hr))
         hr=m_recordset.CreateInstance(__uuidof(Recordset));
   if(SUCCEEDED(hr))
 m_fConnected=TRUE;
     else
 m_fConnected=FALSE;
}
catch(_com_error *e){
         MessageBox(e->ErrorMessage());
 m_fConnected=FALSE;
}
if(!m_fConnected)
  MessageBox("ADO数据源初始化失败!");
  else
  m_strSource=(const char *)source;
// TODO: You may populate your ListView with items by directly accessing
//  its list control through a call to GetListCtrl().
}
为什么在RecordSet的open(......)是连接不上????????
(发表于2002-12-23 8:29:00)

tiank_sky:请问怎样用ADO动态创建数据库?
(发表于2002-12-31 11:56:00)

Kimhuang:我按你的方法把你的例子重新编写的时候,为什么在m_pRecordset->Open("SELECT * FROM users",_variant_t((IDispatch*)theApp.m_pConnection,true),adOpenStatic,adLockOptimistic,adCmdText);
这个地方,总是说 
error C2065: 'theApp' : undeclared identifier
error C2228: left of '.m_pConnection' must have class/struct/union type
请问这是为什么呢?
(其它地方跟你的例子一样)
(发表于2003-4-22 17:50:00)

blue_seawind:你应该加上一句:extern **App theApp;其中**App 代表你的类名。
(发表于2003-4-25 22:06:00)

gamestar:不错的文章
(发表于2003-5-27 16:57:00)

lyyer:总是有 _com_issue_error  undefined 
Can you let me why?
Think you 

(发表于2003-6-20 10:17:00)

skdragon:不错的文章,对于我这个出学者来说,很快就入门了,希望你以后多多发些这样的文章。
(发表于2003-9-12 16:54:00)

dreamge:我用Ado访问数据库时,插入一条记录,用法如下:
     char Sql[256];
     int Num;
     sprintf(Sql,"INSERT ENTITY_RELATION(SRCBID, SRCID, OBJBID, OBJID) VALUES('%ld', '%ld', '%ld', '%ld')", nSrcBid, nSrcId, nObjBid, nObjId);
     _variant_t RecordsAffected(Sql);
     m_pRs->PutRefActiveConnection(m_pConn);
     m_pRs->Open(RecordsAffected, vtMissing, adOpenStatic, adLockReadOnly, adCmdText);
     Num=m_pRs->GetRecordCount();
     最后一句话死机了?!但是实际上是插入记录已经成功了。是怎么回事?应该如何来判断是否插入记录成功呢?
 
     我用的是Ado2.0,m_pRs和m_pConn的初始化等应该都正常。
(发表于2003-12-5 14:40:00)

eliner:真的要谢谢了


(发表于2004-4-3 16:24:00)

rbird5118:欢迎加盟中国微型软件开发中心,网站正建设中。。。
为你量身定做各种小型软件,

联系方式:
email:ldh5118@sohu.com
qq   : 36201365
(发表于2004-4-14 16:00:00)

ikohl:感谢
(发表于2004-8-19 14:19:00)

zwzo_wen:呵呵,对于我们这些刚入道的人来说,这些文章真是太好了!

(发表于2006-3-25 17:55:00)

boyofbit:相当感谢
(发表于2007-9-10 13:31:00)

cristiano:非常感谢,现在做一个小的监控程序,努力学习吧,以后多交流^^!!
(发表于2007-10-15 16:53:00)

..........................................................................
--------------------next---------------------

阅读(202) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~