回答編集履歴
1
issues テーブルの description カラムのデータ型変更の検証を追記
answer
CHANGED
@@ -17,4 +17,19 @@
|
|
17
17
|
|
18
18
|
UTF-8 で全角1文字あたり3バイト、改行がCR+LFで2バイトとすると、以下の通りとなり、431行+8文字でちょうど text 型の最大長 65535 バイトを超えているようですね。
|
19
19
|
(50×3+2)×431+(7*3)=65533
|
20
|
-
(50×3+2)×431+(8*3)=65536
|
20
|
+
(50×3+2)×431+(8*3)=65536
|
21
|
+
|
22
|
+
(追記)
|
23
|
+
ちなみに、以下のように issues テーブルの description カラムのデータ型を text 型から longtext 型に変更して、65535 バイトを超える全角 21846 文字(=65538 バイト)を登録したところ、とりあえずはうまく登録されました。
|
24
|
+
```sql
|
25
|
+
MariaDB [redmine]> ALTER TABLE `issues` MODIFY `description` LONGTEXT;
|
26
|
+
Query OK, 1 row affected (0.01 sec)
|
27
|
+
Records: 1 Duplicates: 0 Warnings: 0
|
28
|
+
|
29
|
+
MariaDB [redmine]> SELECT TABLE_NAME,COLUMN_NAME,COLUMN_TYPE FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'issues' AND COLUMN_NAME = 'description';
|
30
|
+
+------------+-------------+-------------+
|
31
|
+
| TABLE_NAME | COLUMN_NAME | COLUMN_TYPE |
|
32
|
+
+------------+-------------+-------------+
|
33
|
+
| issues | description | longtext |
|
34
|
+
+------------+-------------+-------------+
|
35
|
+
```
|