MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQLのINSERT関数で「len」が文字列の残りの長さを超える場合、どのような結果になりますか?

MySQLのINSERT()関数では、引数「len」に指定した値が元の文字列の残りの長さを超えている場合でも、エラーは発生しません。代わりに関数は、指定位置から文字列の末尾まですべての文字を削除し、その後ろに新しい文字列「newstr」を挿入します。

つまり、「len」が大きすぎる場合は、残りの文字列全体が置き換えの対象になると理解しておくとよいでしょう。

具体例

次の例では、文字列「myteststring」に対して、3文字目から15文字分を削除するよう指定しています。しかし、3文字目以降に実際に存在するのは11文字だけです。このため、MySQLは文字列の最後まで削除を実行し、その位置に「name」を挿入します。

mysql> Select INSERT('myteststring',3,15,'name');
+------------------------------------+
| INSERT('myteststring',3,15,'name') |
+------------------------------------+
| myname                             |
+------------------------------------+
1 row in set (0.00 sec)

実行結果として「myname」と表示されているように、元の文字列の3文字目以降がすべて削除され、新しい文字列が挿入されたことが確認できます。

  1. Python文字列の最大長はどれくらい?メモリと環境による上限を解説

    Python文字列の最大長は環境によって決まるPythonにおける文字列の最大長は、理論上の上限よりも、実際に利用できるメモリ容量とPythonの実行環境(32ビットか64ビットか)によって決まります。言語仕様上、文字列の長さは Py_ssize_t 型で管理されており、64ビット環境では最大約9.2×1018(263-1)文字まで扱えることになっています。しかし、現実的にはこの上限に達する前にメモリが足りなくなります。64ビット環境の場合64ビット版のPythonを搭載し、64GBのメモリを備えたマシンであれば、約63GB程度の巨大な文字列でも十分に扱うことが可能です。さらにメモリを増設すれ

  2. 【初心者向け】Pythonで文字列の長さを取得する方法をわかりやすく解説

    Pythonで文字列の長さを取得する基本:len()関数Pythonには、文字列やリスト、タプルといった複合オブジェクトの長さ(要素数)を取得できる組み込み関数 len() が用意されています。文字列の長さを知りたい場合は、対象の文字列をそのまま len() の引数として渡すだけでOKです。print(len(abcdefghijklmnopqrstuvwxyz))出力結果:26変数に格納した文字列の長さを取得する実際の開発では、変数に代入した文字列の長さを調べる場面が多いでしょう。次のように、変数を len() に渡すだけで簡単に取得できます。text = Hello, Python! pr