Rumah >pangkalan data >tutorial mysql >Bagaimana untuk mereka bentuk struktur jadual MySQL berprestasi tinggi untuk melaksanakan fungsi cadangan makanan?
Bagaimana untuk mereka bentuk struktur jadual MySQL berprestasi tinggi untuk melaksanakan fungsi pengesyoran makanan?
Memandangkan permintaan orang ramai terhadap makanan semakin tinggi, aplikasi sistem pengesyoran dalam bidang makanan semakin meningkat secara beransur-ansur. Mereka bentuk struktur jadual MySQL berprestasi tinggi untuk melaksanakan fungsi pengesyoran makanan akan memainkan peranan penting dalam meningkatkan pengalaman pengguna dan pembangunan platform. Artikel ini akan memperkenalkan cara mereka bentuk struktur jadual sedemikian dan memberikan contoh kod khusus.
1. Analisis Keperluan
Sebelum mereka bentuk sistem pengesyoran makanan berprestasi tinggi, anda perlu menjelaskan keperluan sistem terlebih dahulu. Secara umumnya, sistem pengesyoran makanan perlu memenuhi keperluan berikut:
2. Reka bentuk meja
Berdasarkan analisis permintaan di atas, kami boleh mereka bentuk struktur jadual berikut untuk menyokong fungsi sistem pengesyoran makanan:
BUAT JADUAL user
(
user_id
INT PRIMARY KEY AUTO_INCREMENT,
username
VARCHAR(100) NOT NULL,
gender
ENUM('male', 'female') NOT NULL,
age
INT NOT NULL
);
CREATE TABLE food
(
food_id
INT PRIMARY KEY AUTO_INCREMENT,
food_name
VARCHAR(100) NOT NULL,
food_type
VARCHAR(100) NOT NULL
);
CREATE TABLE user_food_rating
(
user_id
INT NOT NULL,
food_id
INT NOT NULL,
rating
FLOAT NOT NULL,
PRIMARY KEY (user_id
, food_id
),
FOREIGN KEY (user_id
) REFERENCES user
(user_id
),
FOREIGN KEY (food_id
) REFERENCES food
(food_id
)
);
CREATE TABLE user_food_preference
(
user_id
INT NOT NULL,
food_id
INT NOT NULL,
preference
FLOAT NOT NULL,
PRIMARY KEY (user_id
, food_id
),
FOREIGN KEY (user_id
) REFERENCES user
(user_id
),
FOREIGN KEY (food_id
) REFERENCES food
(food_id
)
);
CREATE TABLE food_similarity
(
food_id1
INT NOT NULL,
food_id2
INT NOT NULL,
similarity
FLOAT NOT NULL,
PRIMARY KEY (food_id1
, food_id2
),
FOREIGN KEY (food_id1
) REFERENCES food
(food_id
),
FOREIGN KEY (food_id2
) REFERENCES food
(food_id
username
VARCHAR(100) NOT NULL,
jantina ENUM('lelaki', 'female') NOT NULL,<p> <code>age
INT NOT NULL);
BUAT JADUAL
food_name
VARCHAR(100) NOT NULL,food_type VARCHAR(100) NOT NULL<br>);<br><ol start="3">
<br>Jadual rating makanan pengguna (user_food_rating): Menyimpan maklumat rating pengguna untuk makanan, termasuk ID pengguna, ID makanan dan nilai rating. <br><br><br>BUAT JADUAL <kod>rating_makanan_pengguna</kod>
</ol>
( food_id
INT NOT NULL,rating
FLOAT BUKAN NULL, KUNCI ASING (
);
BUAT JADUAL
food_id
INT NOT NULL,🎜 food_id2
),🎜 FOREIGN KUNCI (food_id1
) RUJUKAN Atas ialah kandungan terperinci Bagaimana untuk mereka bentuk struktur jadual MySQL berprestasi tinggi untuk melaksanakan fungsi cadangan makanan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!