Idea saya ialah kedai adalah meja yang digunakan untuk menyimpan maklumat kedai.
Kemudian terdapat jadual transaksi dengan field shop_id, yang menyimpan maklumat rekod transaksi semua kedai.
Adakah reka bentuk jadual sebegitu akan memberi kesan apabila jumlah data adalah besar. Adakah terdapat cara yang lebih baik Sebagai contoh, setiap rekod transaksi kedai adalah jadual, tetapi rasanya sukar untuk dilaksanakan kerana kedai boleh ditambah secara dinamik.
Mysql berprestasi sangat baik dengan beribu-ribu rekod Reka bentuk ini boleh berjalan dengan lancar Walau bagaimanapun, jika kedai mempunyai sepuluh pesanan secara purata, maka data kedai dan pesanan dipetakan 10 kali, yang menjejaskan prestasi apabila bilangan pesanan agak besar. . Jadual pangkalan data juga boleh ditambah secara dinamik. Jadi anda boleh melakukan pemprosesan sub-jadual pada rekod pesanan. Walau bagaimanapun, anda tidak boleh menggunakan shop_id yang ditambah secara automatik sebagai kunci asing, kerana selepas anda membahagikan jadual, asas id yang ditambah secara automatik kembali kepada sifar Walaupun anda boleh menetapkannya secara manual, ia adalah sangat menyusahkan, jadi sebaiknya hasilkan sendiri kunci asing untuk memudahkan pemisahan jadual. Terdapat banyak cara untuk menjana ID unik dan anda boleh mereka bentuk sendiri.
Pemahaman saya adalah untuk mereka bentuk meja kedai dan jadual transaksi Kunci asing bagi jadual transaksi adalah kunci utama jadual kedai Secara umum, MySQL masih boleh menahan banyak tekanan, dan beberapa sumber terbuka boleh digunakan. Penyelesaian, atau jadual pesanan dibahagikan kepada jadual biasa, kuncinya bergantung pada cara anda melaksanakannya.
Betulkan apa yang saya katakan di atas sebenarnya, saya jarang menggunakan kunci asing dalam pembangunan