帮帮忙,急用!!!我查询了数据库中这个表但是它里面什么数据都没有,为什么查询的结果还是true呢?

为什么wn_user_ip表中没有这个IP号,确切的说什么数据都没有,怎么查询结果还是true呢?这点我一直想不通。。。下面使部分代码:QSqlDatabasedb=QS... 为什么wn_user_ip表中没有这个IP号,确切的说什么数据都没有,怎么查询结果还是true呢?这点我一直想不通。。。
下面使部分代码:
QSqlDatabase db = QSqlDatabase::database(DATABASE_NAME);
QSqlQuery query(db); //创建查询数据库对象
QString sql="select * from wn_user_ip where user_ip = ' "+tmpUser.getUserIp()+" ' ";
bool isRight = query.exec(sql); //查询数据库
// qDebug() << isRight;
if (!isRight)
{
QMessageBox::information(0, QString::fromUtf8("错误"), QString::fromUtf8(“访问数据库失败”);
}
展开
 我来答
帐号已注销
2011-05-06 · 超过58用户采纳过TA的回答
知道答主
回答量:142
采纳率:0%
帮助的人:129万
展开全部
你的问题是出在你的字段检索字段上,原因是因为你的查询语句出现了问题,一旦tmpUser.getUserIp()的查询值为空值(NULL)或者其他字符(例如:or,union等),带着这样的语句去查询数据库,而此时你的wn_user_ip没有任何的信息,系统默认为空值(NULL),所以这样出现的结果当然为True了。。。。
追问
你说的对,我还用了一个并不存在的IP号测试了一下,结果还是为真。数据库这块我是刚刚自学了点能力实在有限,你能具体说一下我的检索字段哪块出现了问题,导致查询结果始终为真,我用的是SQLite数据库
数位汇聚
2023-08-28 广告
1、数位观察新增一个数据搜索平台:数位观察,不用费力的去各个平台找数据,通过这个平台搜索或勾选需要的标签就行,就能找到各个维度的数据。提供12大类、50多万个数据和数据报告(基本上覆盖了市面上所有细分行业)。在网站首页就有全面又详细的数据分... 点击进入详情页
本回答由数位汇聚提供
bfp3
2011-05-07 · TA获得超过295个赞
知道小有建树答主
回答量:608
采纳率:74%
帮助的人:300万
展开全部
你吧sql语句打印出来复制,直接到数据库中执行看能否执行成功。
如果查询结果是空的有没有报错。

那么肯定是这个问题,你的那个isRight只是能判断你的sql语句对不对,有没有出错,这样看来你如果查出来是空的但是sql语句是对的,所以要判断查出来记录的条数是不是0
php里面有个count()函数,统计有多少条数据,

祝你好运
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式