2010-05-26 12 views
1

D'une manière normale, nous concevons la table avec des champs. Exemple avec un article la table peut contenir des champs comme suit: titre, contenu, auteur .....Conception de base de données non structurée

Mais comment tout le monde pense si nous additionnons quelques champs à un champ?

+4

Je ne comprends pas votre question. Pouvez-vous élaborer s'il vous plaît? –

+3

Ce n'est plus un design - c'est juste un gâchis .... –

+0

Je pense qu'il parle juste d'un champ calculé - à moins qu'il ne s'agisse de concaténation ... – egrunin

Répondre

3

La détention de plusieurs valeurs dans une colonne est une mauvaise idée. Il casse 1st Normal form.

0

Je pense -vous dire:

MyTable 
------- 
int FieldA 
int FieldB 
int FieldSum 

FieldSum est un champ calculé , définie comme la somme des FieldA et FieldB.

Est-ce correct?

Ou voulez-vous dire de changer cette situation

MyTable 
------- 
char LicensePlate 
char Make 
char Model 

à ceci:

MyTable 
------- 
char LicensePlate 
char MakeAndModel 

Dans ce cas: pourquoi?

+0

Cela ressemble à ce qu'il voulait dire, mais est-ce un avantage de le faire à la place? d'utiliser SUM? –

+0

dans un tel cas je préférerais ajouter non le champ "FieldSum". En se calculant lui-même (par exemple en C++), cela peut avoir un bon effet sur le temps de calcul. Si la somme est réellement requise pour la recherche dans la base de données, cela peut être utile, au lieu d'utiliser des fonctions d'agrégation telles que SUM(). Mais cette décision dépend du nombre de lignes et du langage de programmation. Donc, je ne suggère pas cela en général. – poeschlorn

+0

@ Pier-Luc, @poeschlorn: c'est un exemple trivial, nous ne savons toujours pas ce que le PO a réellement en tête. – egrunin

0

Votre question est un peu déroutante mais si vous essayez de conserver plusieurs valeurs dans un champ, Mitch a raison. Si vous avez vraiment besoin de le faire, vous pouvez utiliser une colonne XML.

Here is a link aux informations de support XML pour SQL Server 2005.

Questions connexes