sql >> Databáze >  >> RDS >> Mysql

Obnova databáze mysql dává chyby

Za prvé, tato část kódu nepřeskakuje komentáře, doslova je přidá do vaší $templine :

    if(substr($line, 0, 2) == '--' || $line == '') //Skip all comments
        $templine.=$line;

Za druhé, zde se pokusíte provést dotaz pomocí $templine přiřazeno výše (pokud někdy bylo přiřazeno, nebo jinak '' ), kde ve skutečnosti chcete provést dotaz pomocí $line :

    if(substr(trim($line), -1, 1) == ';'){
        mysql_query($templine) or print('Error: '.mysql_error().'<br>');

Takže v zásadě by to mělo fungovat o něco lépe:

foreach($lines as $line){
    if(substr($line, 0, 2) == '--' || $line == '') //Skip all comments
        continue;
    if(substr(trim($line), -1, 1) == ';'){
        mysql_query(trim($line)) or print('Error: '.mysql_error().'in ' . $line . '<br>');
    }
}


  1. TO_DAYS() Příklady – MySQL

  2. Jak najít všechny podřízené řádky v MySQL?

  3. Dotaz LEFT OUTER JOIN nevrací očekávané řádky

  4. MySQL spojte více řádků jako sloupce