sql >> Database teknologi >  >> RDS >> Mysql

SQL Opret flere tabeller på én gang

MySQL bliver forvirret, fordi du ikke afgrænser dine forespørgsler. Tilføj et semikolon efter den første CREATE erklæring:

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

Sørg også for MySQL_QUERY er i begyndelsen af ​​linjen med ingen andre tegn, undtagen måske et semikolon , i henhold til Heredoc dokumentation .

Da ovenstående ikke ser ud til at virke, så prøv denne kode:

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

Du kunne brug mysqli_multi_query() (MySQL-versionen findes ikke), men du bliver nødt til at bruge MySQLi derefter. Ovenstående kode returnerer den logiske OG af de to forespørgsler, så du stadig får en 0 returneres, hvis en fejler.



  1. Sådan får du SQLite db-værdier i Arraylist til Listview

  2. Find ud af, hvilken række der fejler ved at tilføje en begrænsning i MySQL

  3. opbygning af en dynamisk forespørgsel i mysql og golang

  4. Hvordan kan jeg opdatere et felt af min spinner med brugerinput i EditText