a372187663
2015-03-29 07:24
采纳率: 75%
浏览 2.2k

C++builder 6数据库ADOQuery1->FieldByName为NULL

图片说明
两者都为 NULL
出错图片图片说明
我想要的是 输入员工号查询,员工号没有数据就查无此人。

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

5条回答 默认 最新

  • a372187663 2015-03-29 08:14
    已采纳
                AnsiString ID;
                ID = ADOQuery1->FieldByName("员工号")->AsString;
        if(ID.IsEmpty())
        {
                ShowMessage("查无此人");
                return;
        }
                解决了~
    
    已采纳该答案
    打赏 评论
  • threenewbee 2015-03-29 07:38

    上图太小,代码看不清楚,下面的框提示说,你没法把string作为double,你需要一个转换才行。

    打赏 评论
  • a372187663 2015-03-29 07:45
        AnsiString sqlstr = "Select * from RealSalary where 员工号='"+Edit1->Text+"'";
        ADOQuery1->Close();
        ADOQuery1->SQL->Clear();
        ADOQuery1->SQL->Add(sqlstr);
        ADOQuery1->Open();
        if(NULL == ADOQuery1->FieldByName("员工号")->AsString)
        {
                ShowMessage("查无此人");
                return;
        }
                代码在此
    
    打赏 评论
  • threenewbee 2015-03-29 07:45

    你在数据库中的员工表定义成什么类型的?

    打赏 评论
  • threenewbee 2015-03-29 07:47

    如果是数字,查询中不要加引号。按理说应该定义成整数。

    打赏 评论

相关推荐 更多相似问题