พฤติกรรมของฟังก์ชัน INSERT() เมื่อตำแหน่งอยู่นอกช่วง
ฟังก์ชัน INSERT() ของ MySQL จะไม่ทำการแทรกข้อความใดๆ หากตำแหน่งการแทรก (position) อยู่นอกช่วงที่กำหนด กรณีที่ตำแหน่งอยู่นอกช่วงได้แก่:
- ค่าติดลบ (negative value)
- ค่าเป็นศูนย์ (zero)
- ค่าเกินจำนวนตัวอักษรของสตริงต้นฉบับมากกว่า 1 ตำแหน่ง
ตัวอย่าง
กรณีที่ 1: ตำแหน่งเป็นค่าติดลบ
mysql> Select INSERT('Virat', -1, 5, 'Kohli');
+-------------------------------+
| INSERT('Virat', -1, 5, 'Kohli') |
+-------------------------------+
| Virat |
+-------------------------------+
1 row in set (0.00 sec)
กรณีที่ 2: ตำแหน่งเป็นศูนย์
mysql> Select INSERT('Virat', 0, 5, 'Kohli');
+------------------------------+
| INSERT('Virat', 0, 5, 'Kohli') |
+------------------------------+
| Virat |
+------------------------------+
1 row in set (0.00 sec)
กรณีที่ 3: ตำแหน่งเกินความยาวสตริงมากกว่า 1
สตริง 'Virat' มีความยาว 5 ตัวอักษร แต่ระบุตำแหน่งเป็น 7 จึงไม่มีการแทรกเกิดขึ้น
mysql> Select INSERT('Virat', 7, 5, 'Kohli');
+------------------------------+
| INSERT('Virat', 7, 5, 'Kohli') |
+------------------------------+
| Virat |
+------------------------------+
1 row in set (0.00 sec)