sql >> Databáze >  >> RDS >> Mysql

Mohu vytvořit databázi pomocí PDO v PHP?

Ano, můžete.

dsn část, která je prvním parametrem konstruktoru PDO, nemusí mít název databáze. Můžete jednoduše použít mysql:host=localhost . Poté, pokud máte správná oprávnění, můžete použít běžné příkazy SQL k vytvoření databáze a uživatelů atd.

Následuje příklad z install.php soubor. Přihlásí se pomocí root, vytvoří databázi, uživatele a udělí uživateli všechna oprávnění k nově vytvořené databázi:

<?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());
    }
?>


  1. NENÍ IN vs NEEXISTUJE

  2. TSQL:Vytvořte pohled, který přistupuje k více databázím

  3. Knee-Jerk Performance Tuning:Stačí přidat SSD

  4. Nelze použít tabulku s názvem user v postgresql hibernaci