没有选择数据库 – PHP和MySQL

前端之家收集整理的这篇文章主要介绍了没有选择数据库 – PHP和MySQL前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试连接到我的数据库,当我运行代码时,我收到一个错误.任何人都能告诉我 PHP代码中的错误是什么问题吗?谢谢.
Error: No database selected

PHP代码

include('.conf.PHP');
$prof = $_GET['profile'];
$prof = addslashes(htmlentities($prof));
$query = "SELECT * FROM aTable where id = '".MysqL_real_escape_string($prof)."'";
$info_array = MysqL_query($query,$con) or die (MysqL_error()).;

while($row = MysqL_fetch_array( $info_array )) 
{
    echo $row['num1'];
    echo "</br>";
    echo $row['num2'];
    echo "</br>";
    echo $row['num3'];
    echo "</br>";
    echo $row['num4'];
};

MysqL_close($con);

.conf.PHP文件

<?PHP
    $conf['db_hostname'] = "xxx";
    $conf['db_username'] = "xxx";
    $conf['db_password'] = "xxx";
    $conf['db_name'] = "xxx";
    $conf['db_type'] = "MysqL";

    $con = MysqL_connect('xxx','xxx','xxx') or die (MysqL_error());
    $db  = MysqL_select_db("aTable",$con);
?>

解决方法

除非您的密码不正确并需要修复它,否则请运行GRANT语句以授予对数据库用户的访问权限:
GRANT ALL PRIVILEGES ON aTable.* TO xxx@localhost IDENTIFIED BY 'password_for_xxx';

以上授予所有特权.通常最好只限制所需的内容.例如,如果您只打算SELECT,而不是修改数据,

GRANT SELECT ON aTable.* TO xxx@localhost IDENTIFIED BY 'password_for_xxx';

更新

由于您已将数据库名称标识为dedbMysqL,因此请将MysqL_select_db()调用更改为:

$db = MysqL_select_db("dedbMysqL",$con);

在此之后,上面的GRANT语句可能是不必要的,因为您的主机可能已经计算出正确的数据库权限.

猜你在找的MsSQL相关文章