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

PDO binder parametre afhængigt af, om de findes i forespørgslen

Du kan bruge et array med værdierne og sende det som en parameter til execute() metode.

Hvis typen casting af variablerne, der bindParam() tilbud er ikke så vigtigt (du bruger det ikke engang...), hvilket gør det meget nemmere at bygge forespørgsler, da du kan udfylde arrayet, når du bygger forespørgselsstrengen.

For dit eksempel:

$query = "SELECT * from `usertable` where users_active=:users_active";
$params = array(':users_active' => $users_active);

if($mode=="archived") {
    $query .= " AND archived=:archived";
    $params[':archived'] = $archived;
}

$stmt = $dbpdo->prepare($query);

$stmt->execute($params);



  1. Hvad er den bedste databasestruktur til at opbevare flersprogede data?

  2. Forespørg på en tabels udenlandske nøglerelationer

  3. 7 måder Microsoft Access kan hjælpe din virksomhed på

  4. JpaSpecificationExecutor JOIN + BESTIL AF i specifikation