Définition d'une colonne timestamp MySql workbench?
Cela pourrait être vraiment une question élémentaire, mais je n'ai jamais créé un tableau avec TIMESTAMP()
avant, et je suis confus sur ce qu'il faut mettre comme paramètres. Par exemple, ici:
Je viens de les mettre au hasard TIMESTAMP(20)
, mais que fait la 20
comme un paramètre signifier ici? Ce qui doit être mis ici?
J'ai googlé la question, mais n'ai pas vraiment de venir avec quelque chose d'aussi... de toute façon je suis nouveau sur sql, de sorte que toute aide serait grandement appréciée, merci!!!!!
OriginalL'auteur ocean800 | 2015-06-02
Vous devez vous connecter pour publier un commentaire.
MODIFIER
MySQL 5.6.4, type de données
TIMESTAMP(n)
spécifien
(0 à 6) décimales de précision pour les fractions de secondes.Avant de MySQL 5.6, MySQL ne supporte pas les fractions de secondes stockées dans le cadre d'un
TIMESTAMP
type de données.Référence: https://dev.mysql.com/doc/refman/5.6/en/fractional-seconds.html
Nous n'avons pas besoin de spécifier un modificateur de longueur sur un
TIMESTAMP
. On peut juste préciserTIMESTAMP
par lui-même.Mais sachez que le premier
TIMESTAMP
colonne définie dans la table est soumise à d'initialisation automatique et mise à jour. Par exemple:Ce qui se passe dans les parenthèses à la suite d'un type de données dépend du type de données, mais pour certains types de données, c'est un modificateur de longueur.
Pour certains types de données, le modificateur de longueur affecte la longueur maximale des valeurs qui peuvent être stockés. Par exemple,
VARCHAR(20)
permet jusqu'à 20 caractères pour être stocké. EtDECIMAL(10,6)
permet de valeurs numériques avec quatre chiffres avant la virgule et six après, et efficace de la gamme de -9999.999999 à 9999.999999.Pour les autres types, le modificateur de longueur il n'a pas d'incidence sur la plage de valeurs qui peuvent être stockés. Par exemple,
INT(4)
etINT(10)
sont deux entiers, et les deux peuvent stocker la gamme complète des valeurs autorisées pour le type de données entier.Ce que modificateur de longueur dans ce cas est simplement d'information. Essentiellement, il indique un recommandé de la largeur d'affichage. Un client peut utiliser pour déterminer combien d'espace à réserver sur une ligne pour afficher les valeurs de la colonne. Un client n'a pas à le faire, mais que l'information est disponible.
MODIFIER
Un modificateur de longueur n'est plus acceptée pour laTIMESTAMP
type de données. (Si vous utilisez une très vieille version de MySQL et il est accepté, il sera ignoré.)Réponse mise à jour de la note de soutien pour les fractions de secondes dans le TIMESTAMP avec la version de MySQL >= 5.6.4.
OriginalL'auteur spencer7593
C'est la précision de mon ami, si vous mettez par exemple (2) en tant que paramètre, vous obtiendrez une date avec une précision comme: 2015-12-29 00:00:00.00, par la façon dont la valeur maximale est de 6.
OriginalL'auteur Diego Nieto
Cette syntaxe semble être de l'ancienne version de MySQL, avant la 4.1. Il a été complètement supprimé de 5,5 https://dev.mysql.com/doc/refman/5.0/en/upgrading-from-previous-series.html
Donc pas de point en spécifiant une largeur ici, car il peut être ignoré. Quelle version utilisez-vous?
OriginalL'auteur Kim Ryan
MySQL 5.7 apparaît à l'appui de cette syntaxe. L'argument transmis est la précision. TIMESTAMP(3) permettra de précision à la milliseconde. 6 est le montant le plus élevé de précision.
référence: http://dev.mysql.com/doc/refman/5.7/en/datetime.html
OriginalL'auteur Limabean