gpt4 book ai didi

c++ - 在 Recordset ADO 中找不到记录

转载 作者:太空宇宙 更新时间:2023-11-04 12:37:30 25 4
gpt4 key购买 nike

我在 C++ 中使用 ADO,但在 Recordset 中查找特定记录时遇到问题。我编写了 Connection to database、Recordset.Open 等...所以一切顺利。我想查找的记录已存在于数据库中,但 Recordset->Find 方法无法在 Recordset 中找到该特定数据。你能看看我的代码并告诉我我哪里出错了吗?或者这是编写 Recordset->Find() 方法的正确语法 P.S 我是 ADO 的新手,所以我不知道这是否是正确的语法。提前谢谢你。

我已经尝试通过 Fields->GetItem 返回记录并且有效。它返回“nikala”。(如果它确实重要的话。)这意味着 Recordset 正在打开。_bstr_t AccReturn = pRecst->Fields->GetItem("Account")->Value;

我的代码:

pRecst->MoveFirst();
bool found = pRecst->Find("[Account] = 'nikala'", 0, adSearchForward);
if(found == true)
{
//update code
}
else
{
//insert into DB
}

最佳答案

这是示例:

  1. 打开光标

    pRecst->Open("SELECT * FROM TABLE", _variant_t((IDispatch *)pConnection),
    adOpenStatic、adLockReadOnly、adCmdText);

    pRecst->MoveFirst();

    pRecst->Find("Account = 'nikala'", 0, adSearchForward);

  2. 使用 EndOfFile 属性检查记录是否存在:

    bool found = !pRecst->EndOfFile;

关于c++ - 在 Recordset ADO 中找不到记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55763019/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com