sql >> Databasteknik >  >> RDS >> Mysql

PHP MySQL - Hur man infogar standardvärde i ett förberett uttalande

Jag hade samma problem, så jag anpassade det här svaret https://stackoverflow.com/a/13867665/ 1251063 till php förberett uttalande:

if(!($stmt = $this->conn->prepare("INSERT INTO mytable (myfield) VALUES (IFNULL(?,DEFAULT(myfield)))"))){
    throw new Exception("Prepare failed: (" . $this->conn->errno . ") " . $this->conn->error);
}

if(!($stmt->bind_param("s",$myfield))) { //$myfield is a variable that can be null, if so the default value for such field will be inserted
    throw new Exception("Bind_param failed: (" . $this->conn->errno . ") " . $this->conn->error);
}

if(!$stmt->execute()) {
    throw new Exception("Execute failed: (" . $stmt->errno . ") " . $stmt->error);
}


  1. PHP-formulär session_start():Kan inte skicka sessionscachebegränsare

  2. MySQL Välj senaste månadsdata efter aktuell_tidsstämpel

  3. Hur man representerar Cross Apply och Split String i MySQL

  4. SQL-fråga för att hitta antal gemensamma vänner ges en tabell av person, vän par