Rumah  >  Artikel  >  pangkalan data  >  Bagaimana untuk mereka bentuk struktur jadual pesanan pusat membeli-belah dalam MySQL?

Bagaimana untuk mereka bentuk struktur jadual pesanan pusat membeli-belah dalam MySQL?

WBOY
WBOYasal
2023-10-31 12:09:201596semak imbas

Bagaimana untuk mereka bentuk struktur jadual pesanan pusat membeli-belah dalam MySQL?

Bagaimana untuk mereka bentuk struktur jadual pesanan pusat membeli-belah dalam MySQL?

Dalam sistem pusat beli-belah, pesanan ialah modul data teras. Reka bentuk jadual pesanan perlu mengambil kira maklumat asas pesanan, maklumat produk, maklumat pengguna dan aspek lain. Artikel ini akan memperkenalkan cara mereka bentuk struktur jadual pesanan pusat membeli-belah dalam MySQL dan menyediakan contoh kod yang sepadan.

1. Maklumat asas jadual pesanan

Maklumat asas jadual pesanan termasuk nombor pesanan, masa membuat pesanan, status pesanan, dsb. Berikut ialah contoh struktur jadual pesanan ringkas:

CREATE TABLE `order` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `order_number` varchar(20) NOT NULL,
  `create_time` datetime NOT NULL,
  `status` int(1) NOT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `order_number` (`order_number`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

Jadual pesanan dalam contoh ini mengandungi empat medan: id, nombor_pesanan, masa_buat, status. Antaranya, id ialah pengecam unik pesanan, order_number ialah nombor pesanan, create_time ialah masa membuat pesanan dan status ialah status pesanan (contohnya, 0 bermaksud pembayaran belum selesai, 1 bermakna dibayar, -1 bermaksud dibatalkan, dsb. .).

2. Hubungan antara jadual pesanan dan jadual produk

Terdapat hubungan banyak-ke-banyak antara jadual pesanan dan jadual produk, iaitu satu pesanan boleh mengandungi berbilang produk, dan satu produk juga boleh dibeli dengan pelbagai pesanan. Bagi merealisasikan hubungan ini, jadual produk pesanan boleh diwujudkan untuk merekodkan hubungan antara pesanan dan produk. Berikut ialah contoh hubungan antara jadual pesanan dan jadual produk:

CREATE TABLE `order_item` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `order_id` int(11) NOT NULL,
  `product_id` int(11) NOT NULL,
  `quantity` int(11) NOT NULL,
  PRIMARY KEY (`id`),
  KEY `order_id` (`order_id`),
  KEY `product_id` (`product_id`),
  CONSTRAINT `order_item_ibfk_1` FOREIGN KEY (`order_id`) REFERENCES `order` (`id`) ON DELETE CASCADE,
  CONSTRAINT `order_item_ibfk_2` FOREIGN KEY (`product_id`) REFERENCES `product` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

Dalam jadual produk pesanan, terdapat empat medan: id, id_pesanan, id_produk, kuantiti. Antaranya, id ialah pengecam unik jadual produk pesanan, order_id ialah id pesanan, product_id ialah id produk, dan kuantiti ialah kuantiti pembelian. Pada masa yang sama, untuk memastikan ketekalan data, kekangan kunci asing perlu ditakrifkan untuk memastikan medan order_id dan product_id jadual produk pesanan dikaitkan dengan medan id jadual pesanan dan jadual produk masing-masing.

3. Hubungan antara jadual pesanan dan jadual pengguna

Dalam sistem pusat beli-belah, seorang pengguna boleh membuat beberapa pesanan, tetapi satu pesanan hanya milik seorang pengguna. Oleh itu, jadual pesanan dan jadual pengguna mempunyai hubungan satu dengan banyak. Untuk mencapai perhubungan ini, jadual pesanan perlu mengandungi medan id pengguna. Berikut ialah contoh perhubungan antara jadual pesanan dan jadual pengguna:

CREATE TABLE `order` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `order_number` varchar(20) NOT NULL,
  `create_time` datetime NOT NULL,
  `status` int(1) NOT NULL,
  `user_id` int(11) NOT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `order_number` (`order_number`),
  KEY `user_id` (`user_id`),
  CONSTRAINT `order_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `user` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

Dalam jadual pesanan, medan user_id baharu ditambah, yang digunakan untuk mengaitkan dengan medan id jadual pengguna. Pada masa yang sama, kekangan kunci asing juga perlu ditakrifkan untuk memastikan bahawa medan user_id jadual pesanan dikaitkan dengan medan id jadual pengguna.

4. Ringkasan

Melalui contoh di atas, kita boleh mereka bentuk struktur meja pesanan pusat membeli-belah. Jadual pesanan mengandungi maklumat asas pesanan, jadual produk pesanan merekodkan hubungan antara pesanan dan produk, dan jadual pesanan mempunyai hubungan yang berkaitan dengan jadual pengguna. Mengikut keperluan sebenar, ia juga boleh dikembangkan dan dioptimumkan berdasarkan asas di atas. Melalui reka bentuk jadual pangkalan data yang munasabah, fungsi seperti pengurusan pesanan pusat membeli-belah, pertanyaan dan statistik boleh direalisasikan.

Nota: Kod contoh di atas adalah untuk rujukan sahaja, dan reka bentuk jadual pangkalan data khusus harus dilaraskan mengikut keperluan perniagaan sebenar.

Atas ialah kandungan terperinci Bagaimana untuk mereka bentuk struktur jadual pesanan pusat membeli-belah dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn