sql >> データベース >  >> RDS >> Mysql

列が存在するかどうかを確認し、存在しない場合は、PHPを介してMySQLを追加します

    SQLを次のように変更できます...

    //THIS IS BETTER BUT DONT USE THIS
    $qry = "ALTER IGNORE TABLE {$table} ADD {$column} VARCHAR(20);"
    

    代わりに、プリペアドステートメントでPHP PDOまたはMySQLiを使用します。エスケープされていない文字列を連結したレガシーホラーの代わりに、

    MySQLiソリューション:

    $mysqli = new mysqli($cfg->host, $cfg->user, $cfg->password, $cfg->db);
    
    if ($mysqli->connect_errno) {
        echo 'Connect failed: ', $mysqli->connect_error, '" }';
        exit();
    }
    
    if ($stmt = $mysqli->prepare("ALTER IGNORE TABLE ? ADD ? VARCHAR(20);")) {
        $stmt->bind_param("ss", $table, $column);
        $stmt->execute();
        $stmt->close();
    }
    $mysqli->close();
    


    1. スマート(?)データベースキャッシュ

    2. テーブルに配列を格納/取得するための最適な方法

    3. WHERE句MySQLのPHP文字列変数

    4. 1つのクエリでmysqlテーブルからrowspanを使用してhtmlテーブルを作成しますか?