2011-08-11 3 views
2

Je crée une application Android de revue des enseignants. À partir de maintenant, je prévois de créer ~ 900 tables, chacune représentant un professeur. Chaque entrée de table aura un champ pour les commentaires des utilisateurs sur l'enseignant. Chaque fois qu'un utilisateur ajoute un commentaire, une nouvelle entrée est ajoutée sous ce professeurStockage dans la base de données SQLite

Est-ce une façon logique de procéder? Je pense qu'il pourrait y avoir un moyen plus efficace de le faire. Aussi, aura 900 tables sera trop beaucoup pour MySQLite?

Je pensais aussi à avoir 1 table qui contiendra tous les professeurs, et avoir les commentaires de l'utilisateur comme un champ. Ensuite, quand chaque nouveau commentaire est ajouté, je voudrais ajouter un champ supplémentaire. Je ne pense pas que cela utilise les bases de données correctement, mais est-ce possible (pour augmenter le nombre de champs)

Répondre

7

Vous ne voulez pas 900 tables, vous voulez plus qu'une table Teacher avec 900 entrées. Vous voudrez peut-être lire sur certains database design principles et le Relational Model. La partie la plus utile des liens peut être les exemples du modèle relationnel.

0

Je vous recommande de lire quelques articles sur les bases de la conception de base de données.

Voici une assez bonne qui devrait vous aider à démarrer sur la bonne voie:

Fundamentals of Relational Database Design

0

Sans entrer dans à fond, vous aurez besoin d'au moins une table pour tous les professeurs, une table pour tous utilisateurs et une table pour les commentaires.

create table tbl_professor (id integer primary key, name text, ...) 
create table tbl_user (id integer primary key, name text, ...) 
create table tbl_comment (user_id integer, professor_id integer, thecomment text, ...) 
Questions connexes