を失敗した私は、データベース接続を作成するにはOOPの試みを作るために、以下の要旨を使用します。PHPのデータベーステーブルの作成が
https://gist.github.com/jonashansen229/4534794
これまで動作しているようです。
しかし、データベーステーブルpassed_examsの作成は失敗します。
編集:
最近のコメントや提案の後、私は私のコードを更新:私は、mysqlのコンソールで見ると
require_once 'Database.php'; // the gist 4534794
class DatabaseSchema {
public function createStudents() {
$db = Database::getInstance();
$mysqli = $db->getConnection();
$create_students = 'CREATE TABLE IF NOT EXISTS students (
id INT(6) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
firstname VARCHAR(40) NOT NULL,
lastname VARCHAR(40) NOT NULL,
university VARCHAR(50)
)';
$result = $mysqli->query($create_students);
}
public function createPassedExams() {
$db = Database::getInstance();
$mysqli = $db->getConnection();
$create_passed_exams = 'CREATE TABLE IF NOT EXISTS passed_exams (
id INT(6) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(40) NOT NULL,
student_id INT(6),
FOREIGN KEY (student_id) REFERENCES students(id) ON DELETE CASCADE
)';
$result = $mysqli->query($create_passed_exams);
}
}
$db_student = new DatabaseSchema();
$db_student->createStudents();
$db_student->createPassedExams();
、唯一のテーブルの学生が作成されます。 table passed_examsが見つからないのはなぜですか?
$ db_student = new DatabaseSchema()最後に ';'がありません。 –
ああ男の子、ありがとう@Arsh、完全に見落とされる。 – StandardNerd
あなたは大歓迎です。 –