Die MySQL-Struktur für ein Soziales Netzwerk

(Bevor jemand fragt, das ist rein nur für die Lernerfahrung, die nichts mehr)

Ich bin zu Experimentieren, indem Sie ein Soziales Netzwerk von Grund auf in PHP/MySQL, aber ich habe Schwierigkeiten, das denken von die optimale MySQL-Struktur für Sie, derzeit habe ich:

Dies ist eine Tabelle, die speichert alle user-info:

fname varchar (300),
sname varchar (300),
pass varchar (400),
email varchar (300),
gender varchar (300),
dob varchar (200),
uid varchar (300),
PRIMARY KEY (id)

Dieser wird erstellt, wenn ein Benutzer sich anmeldet, Ihre eigenen persönlichen Tisch:

id int(20) NOT NULL auto_increment,
            uid varchar (300),
            photo_url varchar (400),
            pfid varchar (300),
            phototime datetime,
            video_url varchar (400),
            vfid varchar (300),
            videotime datetime,
            status longtext,
            sid varchar (300),
            statustime datetime,
            blog longtext,
            bid varchar (300),
            blogtime datetime,
            about_bio longtext,
            about_current_job longtext,
            about_secondary_school longtext,
            about_primary_school longtext,
            about_college longtext,
            about_university longtext,
            about_workemail longtext,
            about_homeemail longtext,
            about_phonenumber longtext,
            about_relationshipstatus longtext,
            about_relationshipwith longtext,
            PRIMARY KEY (id)
            )";

Die sessions Tabelle, um zu verfolgen, ob jemand angemeldet ist oder nicht:

id int(20) NOT NULL auto_increment,
sid varchar(300),
uid varchar(300),
PRIMARY KEY (id)

Habe nicht bekommen, auf Beziehungen, aber ich dachte:

id int(20) NOT NULL auto_increment,
requestby varchar(200),
requestto varchar(200),
status varchar(200)
  • Es gibt ein paar Probleme... Erstens, werden Sie nicht erstellen Sie eine neue Tabelle für jeden user, das wäre unüberschaubar. Stattdessen fügen Sie Datensätze in bestehende Tabellen, wenn ein neuer Benutzer Hinzugefügt. Als Nächstes müssen Sie straffen Ihre Datentypen. Speichern Sie nicht alles in varchars, und machen Sie nicht den varchar-mehr als das, was erforderlich ist, um den Wert zu speichern, wie gender varchar (300), dob varchar (200) usw...
  • Das ist nur meine Allgemeine feedback, aber haben Sie eine spezifische Frage?
  • Guter Punkt. Es ist keine Frage hier :S
InformationsquelleAutor AviateX14 | 2012-03-29
Schreibe einen Kommentar