Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Konstruowanie instrukcji UPDATE przy użyciu tablic asocjacyjnych w PHP

public function update($tableName, $values, $conditions = array()) {
    if (empty($values)) {
        throw new Exception('Nothing to update');
    }
    $valueStrings = array();
    foreach ($values as $name => $value) {
        $valueStrings[] = $name . ' = :' . $name;
    }
    $conditionStrings = array();
    foreach ($conditions as $column => $value) {
        $conditionString = $column;
        $conditionString .= is_array($value)
            ? ('IN ("' . implode('","', $value) . '")')
            : (' = "' . $value . '"')
        ;
        $conditionStrings[] = $conditionString;
    }
    $sql = 'UPDATE ' . $tableName
        . ' SET ' . implode(', ', $valueStrings)
        . ' WHERE ' . implode(' AND ', $conditionStrings)
    ;
    // execute query
}

Ale tak naprawdę powinieneś użyć do tego ORM:

Doktryna 2:Zaktualizuj zapytanie za pomocą narzędzia do tworzenia zapytań



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Czy można użyć polecenia typu LOAD DATA INFILE do aktualizacji wierszy w bazie danych?

  2. mysql gdzie ciąg kończy się liczbami

  3. Dodaj dynamiczne dane do wykresu liniowego z bazy danych mysql z wysokimi wykresami

  4. MySQL CHAR() a T-SQL CHAR():jaka jest różnica?

  5. WYBIERANIE z wieloma warunkami WHERE w tej samej kolumnie