所以基本上我已经注册了几个提供免费SQL数据库进行测试的免费主机。 但问题是他们为这些免费数据库创建的user_id似乎永远不会有'CREATE'权限。
我正在使用PHP和PDO连接到数据库,我需要以编程方式创建一个包含PDO的表。
如何获得user_id的'CREATE'权限或创建具有所需权限的新用户?
我使用phpmyadmin手动连接这些数据库。
编辑:请注意,我可以使用PHPMyAdmin创建表,但不能通过PDO创建表。当我使用PDO时,服务器告诉我我没有CREATE permssion
答案 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权限。