Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/160.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ ADODC将单个值检索到EditBox中_C++_Mfc - Fatal编程技术网

C++ ADODC将单个值检索到EditBox中

C++ ADODC将单个值检索到EditBox中,c++,mfc,C++,Mfc,是否有方法将单个值从ADODC检索到编辑框中 我尝试了以下方法:- m_edit1=m_adodc1.GetRecordset().GetField().GetItem(“表1_名称”) 但是出现了一个错误“binary”=“没有可用的转换…” 我记得您可以使用Value属性,然后需要调用pof的SetWindowText()成员函数,如: 编辑:需要使用类转换值: ADODC或什么都没有;) 但是,请检查以下内容:- 我做到了,一部分!! 要通知您我的mdb文件,请执行以下操作:- 其名称(i

是否有方法将单个值从ADODC检索到编辑框中

我尝试了以下方法:-

m_edit1=m_adodc1.GetRecordset().GetField().GetItem(“表1_名称”)

但是出现了一个错误“binary”=“没有可用的转换…”

我记得您可以使用
Value
属性,然后需要调用pof的
SetWindowText()
成员函数,如:

编辑:需要使用类转换值:

ADODC或什么都没有;) 但是,请检查以下内容:-

我做到了,一部分!! 要通知您我的mdb文件,请执行以下操作:- 其名称(inventory.mdb) 它有一张桌子(股票) 字段为(StockName、StockID等) 现在,我只能从“StockName”中提取值,它包含字符串值 通过按钮中的以下代码单击:-

   m_ado.SetRecordSource ("SELECT * FROM Stocks");
   m_ado.Refresh ();
   C_Recordset m_Record = m_ado.GetRecordset ();// this line can be omitted !

   COleVariant var1;
   var1.vt = VT_I2;
   var1.iVal = 1;
   COleVariant value = m_ado.GetRecordset().GetFields().GetItem(var1).GetValue ();
   m_edit = value.bstrVal;

    UpdateData (FALSE);

如何提取其他值,如“StockID”,它是整数或任何其他字段?

Edward,,顺便问一下,我可以在哪里指定要从中检索数据的表字段?您需要为
GetRecordset()
GetField()指定参数
functions——看一看MSDN的文章,我会尝试一下,然后通知您。Edward,上面的信息属于ADODB,它与ADODC不同,是吗?ADODC只是一个数据控件,您可以将记录集绑定到数据源,而ADODB是一个通用类库。ADODC更易于使用--只需使用
var1.iVal=0
,在ADODC中查找
GetRecordset()
GetField()
函数的参数——这是“索引”“列的类型:0=第一,1=第二,…然后我必须根据需要对数据类型进行适当的更改,从Variant更改为正确的类型让我尝试一下,然后返回。
LPTSTR lpValue = (LPTSTR)(_bstr_t) m_adodc1.GetRecordset().GetField().GetItem("table1_names").Value();
m_edit1.SetWindowText(lpValue);
   m_ado.SetRecordSource ("SELECT * FROM Stocks");
   m_ado.Refresh ();
   C_Recordset m_Record = m_ado.GetRecordset ();// this line can be omitted !

   COleVariant var1;
   var1.vt = VT_I2;
   var1.iVal = 1;
   COleVariant value = m_ado.GetRecordset().GetFields().GetItem(var1).GetValue ();
   m_edit = value.bstrVal;

    UpdateData (FALSE);