Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Bagaimana saya bisa menggunakan ON DUPLICATE KEY UPDATE di PDO dengan mysql?

Anda dapat menggunakan VALUES() MySQL fungsi:

Oleh karena itu, dalam kasus Anda:

ON DUPLICATE KEY UPDATE expiry = VALUES(expiry)

Atau, Anda dapat membuat parameter keempat yang Anda ikat $expiry lagi:

$sql = "INSERT INTO $table (user_id, licence, expiry)
                        VALUES (
                        :user_id,
                        :licence,
                        :expiry)
    ON DUPLICATE KEY UPDATE expiry = :another";


try {
    $dbh = new PDO('login info here');
    $dbh->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
    $stmt = $dbh->prepare($sql);
    $stmt->bindParam(':user_id', $userID , PDO::PARAM_INT);
    $stmt->bindParam(':licence', $licence, PDO::PARAM_STR);
    $stmt->bindParam(':expiry' , $expiry , PDO::PARAM_STR);
    $stmt->bindParam(':another', $expiry , PDO::PARAM_STR);
    $stmt->execute();
    // etc.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Basis Data Gagal di Sumber data Jboss

  2. Ukuran skema MySQL

  3. Apakah indeks mempercepat lebih dari> perbandingan di MySQL?

  4. nodeJS mengembalikan nilai dari panggilan balik

  5. MySQL - Versi MySQL ini belum mendukung subquery 'LIMIT &IN/ALL/ANY/SOME