2017-04-11 1 views
0

J'utilise PDO, je voudrais savoir Combien de colonnes dans un tableau est correct? Je ne vais pas tout reprendre une fois, mais je pense à stocker plusieurs colonnes dans une seule table, et je vais récupérer les colonnes nécessaires, Y at-il un problème de performance Si je fais de cette façon ou je peux le faire très bien?Mysql/Mysqli/PDO Performance - Le nombre de tables ou de tableaux que j'imprime

Qu'en est-il du PDO est la performance affectée par le nombre de tables que j'ai ou le nombre de tables que j'imprime en php?

+3

'MySQL a une limite de 4096 colonnes par table', mais évidemment moins de colonnes, mieux c'est. aussi son choix commun pour stocker des données de blob/texte dans des tableaux séparés – Peter

+0

Qu'en est-il du PDO est la performance affectée par le nombre de tables que j'ai ou le nombre de tables que j'imprime en php? –

+1

'PDO' est une enveloppe autour d'un pilote. MySQL utilise un protocole textuel. Plus vous envoyez de données, plus il faut de temps pour analyser ce texte. Que vous supprimiez 500 microsecondes ici ou là - qu'importe? Ce n'est pas "PDO" qui vous causera des problèmes avec beaucoup de données, c'est la vitesse du réseau, la vitesse de mise en tampon et la mémoire qui devra être dépensée. Vous optimisez au mauvais endroit. Vous concevez un modèle de données de sorte que vous puissiez interroger et maintenir les données, pour ne pas le faire fonctionner rapidement avec 'PDO' ou . Il semble que vous l'ayez fait à l'envers. – Mjh

Répondre

1

1017 dans InnoDB.

Mais, plus de 100 sont dans le domaine de la "mauvaise conception de schéma". Vous pouvez utiliser JOIN pour assembler plusieurs tables.

À quoi ressemblent les colonnes? phone1, phone2, ... phone11? Si oui, pas les lire (ou tout autre tableau) à travers les colonnes. Ce est mauvaise conception de schéma.

Il n'y a pas une taille de ligne maximale de 64 Ko. La limite est plus complexe.

Various Hard limits.

L'obtention de "toutes les colonnes" à la fois est habituellement mauvaise conception. (Oh, chérie, est-ce que je me répète?)