私は (My)SQL を初めて使用し、テーブル設計のベスト プラクティスに関する適切な情報を見つけるのが困難でした。
私は配列を持っていると言って、チェス盤に一連の動きを保存したい$a = ['e4 e5', 'Nf3 Nc6', ...]
新しいので、私の最初のアイデアは、Game ID 用と Move 用の 2 つの列を持つ馬鹿げた小さなテーブルです。移動 (配列) はシリアル化され、文字列に格納されます。これは技術的にはうまくいくと思いますが、DB から潜在的に巨大なシリアル化された配列を読み書きすること (おそらくすべてのページの読み込み時) は、私には最適とは思えません。
ユーザー側で配列をキャッシュすることは、さまざまな理由で不可能である可能性があり、私が興味を持っていることではありません。
私は、その形式では完全に予測できないデータを最適に保存する方法を学ぶことに興味があります (たとえば、移動数は 1 から 1000 まで変化する可能性があります)。