0

APIを変更(新しいフィールドを追加)せずにデータを追加する方法を考えようとして、データベースへのCSVインポートに取り組んでいます。

クライアントで JSON をかなり扱っているので、データを JSON 文字列として MYSQL に格納することを考えています。だから私はフィールドを持っている場合

  image_filenames

現在、次のようなデータを保存している場所:

  img123.jpg

次のように、複数の画像を JSON 配列に格納することは理にかなっていますか?

 {"img_base":"img123.jpg", "img_alt_1":"img123-1.jpg", "img_alt_2":"img123-2" }

サーバー側を逆シリアル化できるので、必要な画像を JSON 配列から取得することはそれほど問題にはなりませんが、API が肥大化することはありません。

質問:
JSON 文字列を含む CSV をインポートしても何も見つかりません。では、そうすることの良い点と悪い点は何でしょうか? セキュリティ上の懸念 (SQL インジェクション) はありますか?

ありがとう!

4

1 に答える 1

1

コメントからここに転送:

変化する、または一貫性のないデータ モデル スキームがある場合、リレーショナル データベース ストレージは最適な選択ではありません。確かに、シリアル化してバイナリ文字列として保存できますが、なぜでしょうか? IMO、そして私は NoSQL のファンではありませんが、MongoDB は利用できるもののように見えます。そのドキュメント スキームは JSON ベースです。JSON ベースのコードを日常的に使用している場合は、おなじみでしょう。リレーショナルデータベースではなく、データを保存するためにそれを使用します。

非リレーショナルは作業が少ないため、一部のシナリオでは高速に動作します。また、スキームがないためalter table、そのようなステートメントはありません。したがって、「列」を好きなだけ追加できます。リレーションがなく、JSON 形式でデータを保存する必要があるが、検索可能である場合は、MongoDB が最適です。

于 2012-10-01T10:29:22.340 に答える