Précédent   Forum des professionnels en informatique > Bases de données > MySQL > SQL Procédural
SQL Procédural Forum d'entraide sur les triggers, les procédures stockées et les fonctions en MySQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 18/08/2005, 12h52   #1
Invité de passage
 
Inscription : août 2005
Messages : 3
Détails du profil
Informations forums :
Inscription : août 2005
Messages : 3
Points : 1
Points : 1
Envoyer un message via MSN à William Wild
Par défaut types MYSQL

bonjour, je suis plus ou moins novice en la matière. Après avoir cherché partout j'en suis au stade ou soit j'ai des réponses concrètes ou des liens qui me permettent de les trouver... soit j'achete un bouquin!

bon ma question, n'est pas dure et vu le stade ou j'en suis, beaucoup devrait pouvoir y répondre :

je comprends bien l'ensemble des types de colonnes (Tinyint, float...)
je discerne bien les nuances en terme de caracteres (tel ou tel valeurs entre 0et 255 si "unsigned" et -160 < 0 > +160 si signé etc...)

ok, donc je dois réflechir, selon le types de données qui seront ensuite rentré dans mes tables, en amont à quelles types de colonnes seront les plus adaptées...

je cherche a assimiler, dans l'expérience de dévellopeurs ce qui en général est fait... par exemple en ce moment, je fait un petit site "e-commerce" (bien sur il y a os-commerce,etc... mais c pas comme çà qu'on apprends)

j'ai quelques bouquins sur le sujet, et je dois dire que les choses varient d'auteurs en auteurs... exemple concret: pour un prix (ht ou ttc) certains utilise un type "float" et d'autres un type "decimal (5,2)" ma question est donc, il y a plusieurs types de colonnes, certaines très proches donc: dans quel cas utilisé tel ou tel types de colonnes et pour quel résultat ou quel optimisation etc....

Autre exemple: un descriptif produit, dans certaines tables ils utilisent le type "text" soit une longueur de 65535 caractères d'après le tutorial de Cyberzoïde mais si nos descriptifs sont cours, ne vaut t'il pas utilisé "Tinytext" (255 caractères) dans ce sens, est-ce que cela optimise la table, les requetes, tout ou moins sont poids...

j'aimerai aussi savoir pourquoi dans certains cas les valeurs sont bloqués:
par exemple dès fois on voit une tinyint (4) et une smallint (10) mais ceci est très bizarre puisque elle est bloqué a (4) c'est a dire quelle ne depassera jamais 4 caractères donc pourquoi dans ce cas ne pas utilisé deux "tinyint" puisque en unsigned c'est la plus petite valeurs des entiers de mysql...

Voilà, j'espère que du monde va m'aider et me répondre ou me trouver des tutoriels dans ce sens : me permettre de comprendre et d'utiliser judicieusement ces types...

MERCI A TOUS!

William Wild
William Wild est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/08/2005, 16h48   #2
Invité de passage
 
Inscription : août 2005
Messages : 3
Détails du profil
Informations forums :
Inscription : août 2005
Messages : 3
Points : 1
Points : 1
Envoyer un message via MSN à William Wild
Par défaut MINCE

YA VRAIMENT PERSONNE POUR M'EXPLIQUER ????

ben zut alors ils sont pas sympas les dévellopeurs...

William Wild est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/08/2005, 17h03   #3
Modérateur
 
Avatar de Cybher
 
Homme Michel
Consultant informatique
Inscription : mai 2005
Messages : 3 006
Détails du profil
Informations personnelles :
Nom : Homme Michel
Âge : 29
Localisation : France

Informations professionnelles :
Activité : Consultant informatique
Secteur : Conseil

Informations forums :
Inscription : mai 2005
Messages : 3 006
Points : 4 039
Points : 4 039
ou bien ils ne savent pas! perso j'utilise que des int...
et en plus cela ne fait pas longtemps que tu as posté!!!
Cybher est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/08/2005, 01h34   #4
Invité de passage
 
Inscription : août 2005
Messages : 3
Détails du profil
Informations forums :
Inscription : août 2005
Messages : 3
Points : 1
Points : 1
Envoyer un message via MSN à William Wild
Par défaut si j'en crois le bouquin que j'ai lu...

tu ne peux pas utiliser que des "int" (integer), dans le sens ou ce ne sont que des chiffres, si tu utilse une base de donnée pour un site "dynamique" tu as forcement besoin de varchar, tinytext, blob si tu fais des inserts binaire genre mp3, video etc... datetime, etc... de plus, je pense que ma question est de l'ordre de l'optimisation de la base donc je chipote peut etre si cela se trouve çà fonctionnerait très bien si je n'étais pas tatillon mais j'aimerai avoir l'avis des pros alors... disons que ca me permettrait de mieux utiliser mysql et de rentrer dans une logique de savoir dans quel cas utiliser tel ou tel types de colonnes !!!!

silyou plait aidez MOIIIIIIIIIIIIIIIIIIIIIIIIIII !!!
William Wild est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/08/2005, 11h39   #5
Provisoirement toléré
 
Avatar de Maximilian
 
Inscription : juin 2003
Messages : 2 622
Détails du profil
Informations forums :
Inscription : juin 2003
Messages : 2 622
Points : 2 505
Points : 2 505
Par défaut Re: types MYSQL

Citation:
Envoyé par William Wild
j'ai quelques bouquins sur le sujet, et je dois dire que les choses varient d'auteurs en auteurs... exemple concret: pour un prix (ht ou ttc) certains utilise un type "float" et d'autres un type "decimal (5,2)" ma question est donc, il y a plusieurs types de colonnes, certaines très proches donc: dans quel cas utilisé tel ou tel types de colonnes et pour quel résultat ou quel optimisation etc....
Pour un prix, j'utiliserais un decimal. Ca a l'avantage de fixer une longueur exacte (par exemple 2 chiffres après la virgule).

Citation:
Autre exemple: un descriptif produit, dans certaines tables ils utilisent le type "text" soit une longueur de 65535 caractères d'après le tutorial de Cyberzoïde mais si nos descriptifs sont cours, ne vaut t'il pas utilisé "Tinytext" (255 caractères) dans ce sens, est-ce que cela optimise la table, les requetes, tout ou moins sont poids...
Puisque les *TEXT sont des colonnes de longueur variable, le type utilisé n'a d'impact que sur l'espace requis pour stocker le chiffre indiquant la longueur des données (cet espace ne doit varier que de quelques octets entre TINYTEXT et LONGTEXT), et bien sûr sur la taille maximale de la colonne.
Il vaut donc mieux prévoir assez large pour éviter d'être bloqué par une taille maxi trop petite.

Citation:
j'aimerai aussi savoir pourquoi dans certains cas les valeurs sont bloqués:
par exemple dès fois on voit une tinyint (4) et une smallint (10) mais ceci est très bizarre puisque elle est bloqué a (4) c'est a dire quelle ne depassera jamais 4 caractères donc pourquoi dans ce cas ne pas utilisé deux "tinyint" puisque en unsigned c'est la plus petite valeurs des entiers de mysql...
La longueur spécifiée entre parenthèses n'a aucune conséquence sur la taille de la colonne. Elle sert juste pour l'affichage, en particulier en combinaison avec l'attribut ZEROFILL.

Ex :
Code :
1
2
3
4
 
TINYINT(4) => 1
TINYINT(4) ZEROFILL => 0001
TINYINT(10) ZEROFILL=> 0000000001
__________________
Pensez au bouton
Maximilian est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 02h58.


 
 
 
 
Partenaires

Hébergement Web