我可以在PHP中使用PDO创建数据库吗?
我想创建一个使用PDO与MySQL交互的类。我可以使用PDO创建新的MySQL表吗?
是的,可以。
该部件是 PDO 构造函数的第一个参数,不必具有数据库名称。您只需使用 .然后,只要您拥有正确的权限,就可以使用常规 SQL 命令创建数据库和用户等。dsn
mysql:host=localhost
下面是一个安装.php文件的示例。它使用 root 登录,创建一个数据库,一个用户,并授予该用户对新创建的数据库的所有权限:
<?php
$host = "localhost";
$root = "root";
$root_password = "rootpass";
$user = 'newuser';
$pass = 'newpass';
$db = "newdb";
try {
$dbh = new PDO("mysql:host=$host", $root, $root_password);
$dbh->exec("CREATE DATABASE `$db`;
CREATE USER '$user'@'localhost' IDENTIFIED BY '$pass';
GRANT ALL ON `$db`.* TO '$user'@'localhost';
FLUSH PRIVILEGES;")
or die(print_r($dbh->errorInfo(), true));
}
catch (PDOException $e) {
die("DB ERROR: " . $e->getMessage());
}
?>
是的,这是一样的,就像运行一个常规查询,如“CREATE TABLE...”。