Bagaimana untuk mereka bentuk struktur jadual MySQL yang boleh diperluaskan untuk melaksanakan fungsi perkongsian sosial?
Dengan peningkatan rangkaian sosial, fungsi perkongsian sosial telah menjadi ciri standard bagi banyak aplikasi. Untuk mencapai perkongsian sosial di kalangan pengguna, reka bentuk pangkalan data menjadi penting. Artikel ini akan memperkenalkan cara mereka bentuk struktur jadual MySQL yang boleh diperluaskan untuk melaksanakan fungsi perkongsian sosial dan menyediakan contoh kod khusus.
Pertama sekali, kita perlu mencipta jadual pengguna untuk menyimpan maklumat asas pengguna, seperti nama pengguna dan kata laluan , peti mel, dsb. Jadual pengguna boleh dibuat menggunakan pernyataan SQL berikut:
CREATE TABLE `user` ( `id` INT(11) NOT NULL AUTO_INCREMENT, `username` VARCHAR(50) NOT NULL, `password` VARCHAR(50) NOT NULL, `email` VARCHAR(50) NOT NULL, PRIMARY KEY (`id`), UNIQUE KEY `username` (`username`), UNIQUE KEY `email` (`email`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
Seterusnya, kita perlu mencipta jadual kongsi kandungan kongsi pengguna. Jadual kongsi boleh dibuat menggunakan pernyataan SQL berikut:
CREATE TABLE `share` ( `id` INT(11) NOT NULL AUTO_INCREMENT, `user_id` INT(11) NOT NULL, `content` TEXT NOT NULL, `created_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (`id`), CONSTRAINT `fk_user_id` FOREIGN KEY (`user_id`) REFERENCES `user` (`id`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
Dalam jadual kongsi, kami menggunakan kekangan kunci asing untuk memastikan setiap bahagian adalah milik pengguna tertentu, dan apabila pengguna dipadamkan, berkaitan Perkongsian itu juga akan dipadamkan.
Bagi melaksanakan fungsi like, kita perlu mencipta jadual suka untuk menyimpan status Like komen pengguna. Jadual suka boleh dibuat menggunakan pernyataan SQL berikut:
CREATE TABLE `like` ( `id` INT(11) NOT NULL AUTO_INCREMENT, `user_id` INT(11) NOT NULL, `share_id` INT(11) NOT NULL, `created_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (`id`), CONSTRAINT `fk_like_user_id` FOREIGN KEY (`user_id`) REFERENCES `user` (`id`) ON DELETE CASCADE ON UPDATE CASCADE, CONSTRAINT `fk_like_share_id` FOREIGN KEY (`share_id`) REFERENCES `share` (`id`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
Dalam jadual suka, kami juga menggunakan kekangan kunci asing untuk memastikan setiap suka dimiliki oleh pengguna dan perkongsian tertentu, dan apabila pengguna Atau apabila perkongsian itu dipadamkan, suka yang berkaitan juga akan dipadamkan.
Akhir sekali, kita perlu mencipta jadual ulasan untuk menyimpan komen pengguna pada bahagian tersebut. Jadual ulasan boleh dibuat menggunakan pernyataan SQL berikut:
CREATE TABLE `comment` ( `id` INT(11) NOT NULL AUTO_INCREMENT, `user_id` INT(11) NOT NULL, `share_id` INT(11) NOT NULL, `content` TEXT NOT NULL, `created_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (`id`), CONSTRAINT `fk_comment_user_id` FOREIGN KEY (`user_id`) REFERENCES `user` (`id`) ON DELETE CASCADE ON UPDATE CASCADE, CONSTRAINT `fk_comment_share_id` FOREIGN KEY (`share_id`) REFERENCES `share` (`id`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
Dalam jadual ulasan, kami juga menggunakan kekangan kunci asing untuk memastikan setiap ulasan dimiliki oleh pengguna dan perkongsian tertentu, dan apabila pengguna atau kongsi adalah Apabila dipadamkan, ulasan berkaitan juga akan dipadamkan.
Melalui reka bentuk struktur jadual di atas, kami telah melaksanakan fungsi perkongsian sosial asas. Pengguna boleh mendaftar akaun dan log masuk ke sistem untuk berkongsi kandungan, suka dan komen. Pada masa yang sama, struktur jadual kami boleh diperluaskan, dan lebih banyak jadual fungsi boleh ditambah mengikut keperluan, seperti jadual ikut, jadual kegemaran, dll.
Saya harap artikel ini akan membantu anda memahami cara mereka bentuk struktur jadual MySQL yang boleh diperluas untuk melaksanakan fungsi perkongsian sosial. Melalui reka bentuk jadual yang munasabah, kami boleh menyimpan dan mengurus data sosial antara pengguna dengan cekap.
Atas ialah kandungan terperinci Bagaimana untuk mereka bentuk struktur jadual MySQL yang boleh diperluaskan untuk melaksanakan fungsi perkongsian sosial?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!