Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Menyimpan data terstruktur dalam kolom database?

Berbicara secara pribadi, survei adalah satu kasus di mana saya pikir tidak menormalkan apa pun dan menyimpan JSON cukup banyak apa adanya adalah pilihan yang lebih baik.

Tanpa itu, Anda akan berakhir dengan segala macam kasus penggunaan aneh yang pada akhirnya ingin Anda kelola di jalan. Selain merapikan semua jenis pertanyaan pilihan ganda, Anda juga harus mengelola jawaban "Lainnya" di dalamnya, pertanyaan kondisi, kelompok pertanyaan bersyarat, daftarnya terus bertambah. Terlebih lagi, survei — seperti bentuk data lainnya — dapat berubah, dan segala sesuatunya berubah dari mengerikan menjadi nuklir ketika mereka melakukannya.

Kelebihan JSON adalah, karena survei secara konseptual independen satu sama lain, Anda tidak memerlukan integritas referensial dari satu ke yang berikutnya, jadi Anda sebaiknya menyimpan seluruh pohon pertanyaan dan opsi sebagai satu gumpalan JSON, dan khawatir tentang memformatnya di aplikasi Anda.

Hal yang sama untuk setiap jawaban yang dikirimkan, dalam hal ini:ambil gumpalan asli, tandai jawaban yang relevan sebagai yang dipilih dan seterusnya di dalamnya, dan simpan JSON yang dihasilkan apa adanya , daripada menyimpan referensi ke pertanyaan asli di samping apa pun yang dijawab. Ini akan memungkinkan Anda untuk dengan mudah melacak apa yang sebenarnya oleh pengguna dijawab, berlawanan dengan apa pun yang dikatakan versi survei saat ini, dan lakukan terlepas dari seberapa jauh survei telah menyimpang sejak awalnya dijawab.

Jika Anda perlu mencari jawabannya nanti, perhatikan bahwa Postgres memungkinkan untuk mengindeks JSON menggunakan indeks GIST di seluruh bidang, dan indeks BTREE pada ekspresi.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cara menampilkan gambar (tipe bolb) di halaman jsp dari mySql DB di Struts 2 menggunakan Hibernate

  2. Peningkatan Otomatis tidak berfungsi untuk kelas Entitas dengan Kunci komposit

  3. Tidak dapat terhubung ke salah satu host MySQL yang ditentukan

  4. Mencoba memposting hanya satu kolom ke dalam basis data

  5. Kolom tidak dikenal dalam kesalahan daftar bidang Rmysql