当我没有来自主机的“创建”权限时,如何在mysql数据库中创建表?

时间:2016-04-04 11:31:11

标签: php mysql pdo phpmyadmin hosting

所以基本上我已经注册了几个提供免费SQL数据库进行测试的免费主机。 但问题是他们为这些免费数据库创建的user_id似乎永远不会有'CREATE'权限。

我正在使用PHP和PDO连接到数据库,我需要以编程方式创建一个包含PDO的表。

如何获得user_id的'CREATE'权限或创建具有所需权限的新用户?

我使用phpmyadmin手动连接这些数据库。

编辑:请注意,我可以使用PHPMyAdmin创建表,但不能通过PDO创建表。当我使用PDO时,服务器告诉我我没有CREATE permssion

1 个答案:

答案 0 :(得分:0)

如果您可以通过PHPMyAdmin而不是通过自己的PHP脚本创建表,那么可能是因为PHPMyAdmin正在使用不同的MySQL用户。 在您的PHPMyAdmin转到顶部的“SQL”按钮并输入以下查询:

SELECT CURRENT_USER();

它将在PHPMyAdmin中显示登录用户,尝试在PHP脚本中使用此用户。

如果您不想使用同一个用户。然后在SQL查询中执行:

GRANT ALTER, CREATE ON your_db_name TO 'your_php_user'@'localhost';

这将为您的用户提供CREATE和ALTER TABLE权限。