2013-10-16 17 views
5

Basit sosyal ağ sitesi oluşturacağım. öylesine ... Ben Facebook mesajların yorumları nasıl olduğunu bilmek istiyorum.Facebook'un veritabanı yapısı yorumları saklamak ve göndermek için?

, aynı mağazada yer alan tablo satırında bulunan numaralı yazının ve yorumların uzun bir liste listesini nasıl depolayacağını anlatır. veya her gönderi için her bir veritabanı tablosuna sahip olduğundan, bu mesajın o satırdaki yorumunu yapabilirsiniz.

CMS gibi basit bir sosyal ağ sitesi için en iyi veritabanı yapısı nedir. ancak çok sayıda kullanıcı tarafından ele alınabilir.

Lütfen bu konuda bana yardımcı olun. Teşekkürler.

+1

"facebook mağazasıdır. Aynı veritabanında yazılan mesajlar ve yorumları" asla olmayacak. onlar görüş ve teklif (bence) – Sri

+0

sonrası için deffrent tabloları var. – Milan

cevap

5

Küçük bir örnek:

Tablo kullanıcıları:

users 
-------- 
id 
name 

Tablo comments:

comments 
-------- 
id 
comment_text 
posted_by 
posted_to 
date_posted 

kimliğine sahip kullanıcı 342 ileti kullanıcı 783 profili için bir yorum, bu yorumun şöyle saklayabilirsiniz:

INSERT INTO comments(comment_text, posted_by, posted_to) 
VALUES ('Hi!', 342, 783, '2013-10-16 11:17:00'); 

Ardından, kullanıcının profilinde gösterilecek yorumları seçerken, posted_by ve posted_to sütunlarına aşağıdakileri eklemeniz yeterlidir: kullanıcı tablosundaki ilgili kimlikler. i yorum için düşünüyorum

0

Sanırım tüm iletiler ve post_id içeren bir tablo var. Sonra tüm yorumları ile başka bir tablo var. Ve comments_table içinde post_id ile bir satırları var, böylece atayabilirler.

Yani,

her Mesaj yazdım kullanıcının durumu metin, kimliğe sahip bir POST_ID vardır vs. ve her görüşe bir comment_id ve sonrası atamak için bir POST_ID vardır.

Tahmin ettiğim budur. Sana kesin olarak anlatamam.

Basit bir örnek GÜNCELLEME

mesajlar masa

post_id | user_id | status_text | datetime 

sen neler yapabileceğini yorumlar-tablo

comments_id | user_id | post_id | comments_text | datetime 
0

bunu parça kimliği adı sen relaeation ve şimdilik üç tablodur ihtiyaç

   CREATE TABLE `tbl_video_comments` (      
        `comment_id` int(11) NOT NULL AUTO_INCREMENT,   
        `user_name` varchar(20) DEFAULT NULL,     
        `track_id` int(11) NOT NULL,        
        `datetime` datetime NOT NULL,       
        `comment` varchar(100) NOT NULL,       
        PRIMARY KEY (`comment_id`)        
       ) ENGINE=InnoDB AUTO_INCREMENT=13 DEFAULT CHARSET=latin1 
0

Tüm içeren bir sütun toplamak thaty Video şarkı için bu tablo o tabloyu deneyin. Userid'yi kullanıcı tablosunda birincil anahtar olarak tutun ve oluşturduğunuz her tabloda yabancı yapın. Bu, her şeyi userid temelinde almanıza yardımcı olacaktır.