MySQL raakt in de war omdat u uw zoekopdrachten niet afbakent. Voeg een puntkomma toe na de eerste CREATE
verklaring:
private function buildDB() {
$sql = <<<MySQL_QUERY
CREATE TABLE IF NOT EXISTS headings (
type VARCHAR(150),
heading VARCHAR(100),
uniqueid VARCHAR(100)
);
CREATE TABLE IF NOT EXISTS titles (
type VARCHAR(150),
heading VARCHAR(100),
uniqueid VARCHAR(100)
)
MySQL_QUERY;
return mysql_query($sql);
}
Zorg er ook voor dat MySQL_QUERY
staat aan het begin van de regel met geen andere tekens, behalve misschien een puntkomma , volgens de Heredoc documentatie
.
Aangezien het bovenstaande niet lijkt te werken, probeert u deze code eens:
private function buildDB() {
$sql1 = "CREATE TABLE IF NOT EXISTS headings (
type VARCHAR(150),
heading VARCHAR(100),
uniqueid VARCHAR(100))";
$sql2 = "CREATE TABLE IF NOT EXISTS titles (
type VARCHAR(150),
heading VARCHAR(100),
uniqueid VARCHAR(100))";
MySQL_QUERY;
return mysql_query($sql1) && mysql_query($sql2);
}
Je zou gebruik mysqli_multi_query()
(de MySQL-versie bestaat niet), maar dan zou je MySQLi moeten gebruiken. De bovenstaande code retourneert de logische AND van de twee zoekopdrachten, dus je krijgt nog steeds een 0
geretourneerd als een mislukt.