[MYSQL] petite question sur la syntaxe des types de variables

petite question sur la syntaxe des types de variables [MYSQL] - SQL/NoSQL - Programmation

Marsh Posté le 17-08-2003 à 22:49:49    

voici une requete...
CREATE TABLE images(id INTEGER)
 
J'aimerais juste savoir qu'est ce qui change si j'écris la requête comme suit:
 
CREATE TABLE images(id INTEGER(4))
 
 
merci

Reply

Marsh Posté le 17-08-2003 à 22:49:49   

Reply

Marsh Posté le 17-08-2003 à 22:54:31    

Et l'aide de mysql ? :o  
http://www.mysql.com/doc/en/Numeric_types.html

Citation :

Another extension is supported by MySQL for optionally specifying the display width of an integer value in parentheses following the base keyword for the type (for example, INT(4))

Reply

Marsh Posté le 18-08-2003 à 20:20:27    

Chelou leur truc...
 
A la base (du moins, c'est ce qu'il y a dans tous les autres SGBD) pour les types INT et autres numériques simples, c'est le nombre de bytes utilisés normalement :??:
 
Y'a que NUMBER et DECIMAL où ça représente en effet le nombre de caractères sur les autres SGBD
 
Enfin... Les autres... Je ne connais que SQL SErver et Oracle, c'est un peu réduit, mais bon, vu que c'est un peu les deux fers de lance du marché (avec un peu DB2) on pourrait s'attendre à ce que MySQl ait un peu suivit leur système.
D'autant plus que ça n'a aucun sens, puisque le type INT est vraiment géré comme le type INT du C, c'est à dire que ce chiffre ne va ni influer la taille sur le disque ni sa précision... Alors que pour NUMBER et DECIMAL, ça a un réel sens.
 
Dans un NUMBER(38), je peux très bien stocker un chiffre de plus de 38 caractères, seulement ma précision va s'arrêter aux 38 premiers caractères (sans perte par contre, contrairement au float qui perd de la précision dès que la valeur est différente de 0)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed