如果在 MySQL INSERT() 函数中插入的位置超出范围会发生什么?
如果插入位置超出范围,MySQL INSERT() 函数将不会执行任何插入操作。当我们传递负值或 0(零)值,或者该值超出原始字符串中字符总数加2时,插入位置可能会超出范围。可以通过以下示例理解:
示例
下面的查询将不会执行任何插入操作,因为插入位置超出范围,即为负值。
mysql> Select INSERT('Virat', -1,5,'Kohli');
+-------------------------------+
| INSERT('Virat', -1,5,'Kohli') |
+-------------------------------+
| Virat |
+-------------------------------+
1 row in set (0.00 sec)下面的查询将不会执行任何插入操作,因为插入位置超出范围,即为 0(零)。
mysql> Select INSERT('Virat', 0,5,'Kohli');
+------------------------------+
| INSERT('Virat', 0,5,'Kohli') |
+------------------------------+
| Virat |
+------------------------------+
1 row in set (0.00 sec)下面的查询将不会执行任何插入操作,因为插入位置超出范围,即超出原始字符串中字符数量加2。在下面的示例中,原始字符串“Virat”包含 5 个字符,而我们提供的 位置值为 7,因此不会发生插入。
mysql> Select INSERT('Virat', 7,5,'Kohli');
+------------------------------+
| INSERT('Virat', 7,5,'Kohli') |
+------------------------------+
| Virat |
+------------------------------+
1 row in set (0.00 sec)
广告
数据结构
网络
关系数据库管理系统 (RDBMS)
操作系统
Java
iOS
HTML
CSS
Android
Python
C语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP