Mysql
 sql >> база данни >  >> RDS >> Mysql

PHP/MySQL Вмъкване на нулеви стойности

Това е един пример за използване на подготвени оператори наистина ви спестява някои проблеми.

В MySQL, за да вмъкнете нулева стойност, трябва да я посочите в INSERT време или оставете полето извън, което изисква допълнително разклоняване:

INSERT INTO table2 (f1, f2)
  VALUES ('String Value', NULL);

Ако обаче искате да вмъкнете стойност в това поле, сега трябва да разклоните кода си, за да добавите единични кавички:

INSERT INTO table2 (f1, f2)
  VALUES ('String Value', 'String Value');

Подготвените изявления автоматично правят това вместо вас. Те знаят разликата между string(0) "" и null и напишете заявката си по подходящ начин:

$stmt = $mysqli->prepare("INSERT INTO table2 (f1, f2) VALUES (?, ?)");
$stmt->bind_param('ss', $field1, $field2);

$field1 = "String Value";
$field2 = null;

$stmt->execute();

Той избягва полетата ви вместо вас, гарантира, че не забравяте да свържете параметър. Няма причина да останете с mysql разширение. Използвайте mysqli и това са подготвени изявления вместо. Ще си спестите цял свят от болка.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Синтаксис на SQL UPDATE – Изброен от СУБД

  2. Чувствителни ли са имената на колона и таблица в MySQL?

  3. Има ли някакъв начин да се провери производителността на mysql Indexing

  4. MySql таблица Вмъкнете, ако не съществува, в противен случай актуализирайте

  5. Docker:Комбинирайте няколко изображения