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

BOB - forespørgsel giver ingen resultater

Problemet her er, at du binder parametre med bindParam , som bruger binding ved reference. I dit tilfælde skal du bruge bindValue i stedet:

foreach( $binders as $key => $value ) {
    $sql->bindValue( $key, $value );
}

Eller du kan sende dit array direkte til execute() metode:

$sql->execute( $binders );

Som beskrevet i manualen:

the variable is bound as a reference and will only be evaluated at the time that PDOStatement::execute() is called.

Så når din foreach loop slutter $value har værdien af ​​sidste matrixelement Apple . Så når execute kører, både :ctid og :p1 værdier bliver lig med Apple . Det er bestemt ikke, hvad du ønsker)



  1. MySql erklæring forberede ikke klæber

  2. Midlertidige tabeller virker ikke i PHPMyAdmin

  3. SQL Server Transaction Log — Del 2

  4. NULL vs DEFAULT NULL vs NULL DEFAULT NULL i oprettelse af MYSQL-kolonnen?