<?php
$login = 'root';
$password = 'root';
$dsn = "mysql:host=localhost";
$dbb = 'account';
$opt = array(
// any occurring errors wil be thrown as PDOException
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
// an SQL command to execute when connecting
PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'UTF8'"
);
// Making a new PDO conenction.
$conn = new PDO($dsn, $login, $password,$opt);
$db = $conn->prepare("CREATE SCHEMA IF NOT EXISTS `?` ");
$db->bindParam(1, $dbb);
$db->execute();
?>
正しく動作しますが、名前が「アカウント」のシングルクォートでデータベースを作成すると、シングルクォートを削除する方法はわかります。私は多くのことを試みますが、それは取り除かれません。PDOでデータベースを作成するbindParam
テーブル名、列名、データベース名などのエンティティ名にはプレースホルダを使用できません。 – hek2mgl
スクリプトからデータベースを作成する必要があるのはなぜですか?アプリインストールスクリプト以外にも、それを必要とするものはほとんどありません。 –
それではdbの作り方 – Pankaj