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

PHPpdo挿入クエリ

    もうすぐです。ここに簡略化されたバージョンがあります:

    <?php
    
    $sql = "insert into `users` (`username`,`password`) values (?, aes_encrypt(?, ?))";
    $stmt = $this->pdo->prepare($sql);
    
    // Do not use associative array
    // Just set values in the order of the question marks in $sql
    // $fill_array[0] = $_POST['username']  gets assigned to first ? mark
    // $fill_array[1] = $_POST['password']  gets assigned to second ? mark
    // $fill_array[2] = $DBKey              gets assigned to third ? mark
    
    $fill_array = array($_POST['username'], $_POST['password'], $DBKey); // Three values for 3 question marks
    
    // Put your array of values into the execute
    // MySQL will do all the escaping for you
    // Your SQL will be compiled by MySQL itself (not PHP) and render something like this:
    // insert into `users` (`username`,`password`) values ('a_username', aes_encrypt('my_password', 'SupersecretDBKey45368857'))
    // If any single quotes, backslashes, double-dashes, etc are encountered then they get handled automatically
    $stmt->execute($fill_array); // Returns boolean TRUE/FALSE
    
    // Errors?
    echo $stmt->errorCode().'<br><br>'; // Five zeros are good like this 00000 but HY001 is a common error
    
    // How many inserted?
    echo $stmt->rowCount();
    
    ?>
    


    1. 多くのサイドエントリが数百万単位である1対多タイプの関連付けの戦略

    2. SQL Serverで「datetime2」を「smalldatetime」に変換します(T-SQLの例)

    3. 一定の間隔での明確なランダム時間の生成

    4. 列のデータ型をclobからxmltypeに変更するには