Computer >> 컴퓨터 >  >> 프로그램 작성 >> MySQL

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)