QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2585|回复: 1

mysql password()函数的一个问题,请大家帮帮忙

[复制链接]
发表于 2005-4-22 09:11:35 | 显示全部楼层 |阅读模式
我的操作系统是RED HAT AS4,MYSQL的版本是4.1.7(就是RED HAT AS4原有的)。

我用如下这个SELECT语句查询mysql.user表没有任何问题,找到了我需要的记录:
select * from user.mysql where Password=PASSWORD('123456');

可是我在查询自己创建的另一个数据库xyb的数据表ttt时却发生了问题:
select * from xyb.ttt where Password=PASSWORD('123');
这个查询应该是有一条记录的,可是却显示:Empty set (0.00 sec)
我想来想去找不到是什么原因,是不是自己创建的表应该要另外设置什么才能支持根据PASSWORD()函数来验证经过PASSWORD()函数加密的数据。

请大家帮帮我好么,谢谢所有回复的朋友!!
发表于 2005-4-24 23:13:47 | 显示全部楼层
user表中存储的是授权用户的用户名和密码,在你用MYSQLADMIN来更改密码或在数据库里用GRANT新增授权用户时都缺省使用PASSWORD()函数加密密码,所以你用SELECT是对的。
但你自己创建的表中,你INSERT内容时用PASSWORD()函数了吗?如果没用,他会
将你SELECT语句中的内容用PASSWORD()加密后再与表中原有的字符窜比对,那肯定找不到,你在SELECT中直接用密码应该就没问题
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-16 19:36 , Processed in 0.110653 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表