sql >> Databasteknik >  >> RDS >> Mysql

Kan jag skapa en databas med PDO i PHP?

Ja, det kan du.

dsn part, som är den första parametern i PDO-konstruktorn, behöver inte ha ett databasnamn. Du kan helt enkelt använda mysql:host=localhost . Sedan, förutsatt att du har rätt behörighet, kan du använda vanliga SQL-kommandon för att skapa en databas och användare, etc.

Följande är ett exempel från en install.php fil. Den loggar in med root, skapar en databas, en användare och ger användaren all behörighet till den nyskapade databasen:

<?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. Uppgradering av SQL Server Data Platform 2015

  2. Använd NEWSEQUENTIALID() för att skapa en inkrementerande GUID i SQL Server

  3. SQL - Hur man väljer en rad med en kolumn med maxvärde

  4. i postgres, kan du ställa in standardformateringen för en tidsstämpel, efter session eller globalt?