sql >> Databáze >  >> RDS >> Mysql

Aktualizace pomocí výpisu PDO

Místo interpolace proměnných do řetězců SQL použijte parametry dotazu.
Je to bezpečnější, rychlejší a jednodušší.

$temp = "6c ";    
$weather_report = "It's currently $temp " ; 

$sql = "UPDATE data_weather SET text= ? WHERE period='report'";
$stmt = $pdo->prepare($sql);
$stmt->execute(array($weather_report));

Všimněte si, že nemusíte uvádět řetězec. Ve skutečnosti nesmíte vložte do uvozovek ? zástupný symbol. V řetězci zpráv o počasí můžete bezpečně používat apostrofy.

Zástupný symbol parametru můžete použít kdekoli, kam byste normálně vložili jednu skalární hodnotu do výrazu SQL. Např. místo řetězce v uvozovkách, data v uvozovkách nebo číselného literálu. Ale ne pro názvy tabulek nebo sloupců nebo pro seznamy hodnot nebo klíčová slova SQL.



  1. Použití MariaDB s Entity Framework

  2. MySql cursors.execute() pouze s jedním parametrem:Proč je řetězec rozdělen do seznamu?

  3. Jak vložit data z jedné databázové tabulky do jiné databázové tabulky v Mysql

  4. Proč nemohu provést agregační funkci na výrazu obsahujícím agregaci, ale mohu tak učinit vytvořením nového příkazu select kolem něj?