web-dev-qa-db-ja.com

MySQL(5.6)データベースにjson配列を格納するデータ型

Jsonデータ型が使用できないMySQLバージョン5.6でjsonエンコード配列を格納するために使用する必要があるデータ型は何ですか?これまでのところ、TEXTまたはVARCHARとして格納することを考えています。それをどのように保存する必要がありますか?

7
Wenuka

保存するJSONデータの長さによって異なります。長すぎない場合はVARCHARを使用できますが、これにより64Kの制限があります。

マニュアルによると、長さは0〜65,535の値として指定できます。 VARCHARの有効な最大長は、最大行サイズ(すべての列で共有される65,535バイト)と使用される文字セットの影響を受けます。

したがって、巨大なオブジェクトがあることが予想される場合は、TEXTタイプのいずれかを使用します。

TEXT: 65,535 characters - 64 KB 
MEDIUMTEXT: 16,777,215 - 16 MB 
LONGTEXT: 4,294,967,295 characters - 4 GB 

ただし、Mysql 5.7.8以降では、ネイティブのJSONデータ型を使用できます。