Comment obtenir la date du jour & de temps en MySQL?
Est-il une valeur ou une commande de type DATETIME que je peux utiliser dans un manuel de requête pour insérer la date et l'heure actuelles?
INSERT INTO servers (
server_name, online_status, exchange, disk_space, network_shares
) VALUES(
'm1', 'ONLINE', 'ONLINE', '100GB', 'ONLINE' 'DATETIME'
)
La cité valeur DATETIME à la fin est où je veux ajouter la date et l'heure actuelles.
- dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html
- MAINTENANT(), voir dev.mysql.com/doc/refman/5.5/en/... ... Et s'il vous plaît, la prochaine fois, mettez au moins certains de l'effort de recherche dans votre question, cela peut facilement être googlé (donc je viens de downvoted cette question)
- Ma question était plus destiné à comment je dois l'utiliser dans la syntaxe que j'ai posté ci-dessus.
- Voir franciscos réponse pour cela. Mais c'est très, très basique, c'est juste un appel de fonction. Donc, encore une fois, vous devriez mettre plus d'effort de recherche sur le sujet avant de poster une question et vous pouvez aussi lire les instructions SQL.
- ironique. lorsque vous mettez l'effort dans la recherche de la réponse que vous obtenez à ... cette réponse!
- oublié avec cette, long temps de ne pas jouer avec la base de données
- Je suis d'accord avec vous au sujet de l'effort de recherche. Mais je pense que c'est une question valable, parce que si vous tapez
INSERT INTO sometable (`datetime`) VALUES ( NOW() )
dans phpmyadmin sql de la touche de tabulation, puis phpmyadmin de l'astuce serait d'afficher une icône d'erreur avec le message:A comma or a closing bracket was expected near (
. Ceci est source de confusion, parce que le sql de la requête est valide, mais phpmyadmin dit qu'il ne l'est pas.
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser
NOW()
:curdate()
Utilisation CURRENT_TIMESTAMP() ou maintenant()
Comme
ou
Remplacer date_time avec le nom de la colonne que vous souhaitez utiliser pour insérer l'heure.
Même si il ya beaucoup de réponses acceptées, je pense que c'est aussi possible:
Créer votre 'serveurs' tableau suivant :
Et votre INSÉRER déclaration doit être :
Mon Environnement:
Core i3 Windows ordinateur Portable avec 4 go de RAM, et j'ai fait l'exemple ci-dessus sur MySQL Workbench 6.2 (Version 6.2.5.0 Construire 397 64 Bits)
Oui, vous pouvez utiliser le
CURRENT_TIMESTAMP()
commande.Voir ici: Fonctions de Date et Heure
En conception de base de données, iIhighly vous recommandons d'utiliser Unixtime pour des raisons de cohérence et d'indexation /recherche /comparaison de la performance.
On peut toujours convertir lisible par l'homme formats par la suite, l'internationalisation comme est individuellement plus pratique.
Si vous faites changer la valeur par défaut pour
CURRENT_TIMESTAMP
il est plus effiency,La réponse correcte est SYSDATE().
On peut changer ce comportement et MySQL faire
NOW()
se comportent de la même manière queSYSDATE()
par la mise en sysdate_is_now argument de ligne de commande pourTrue
.Noter que
NOW()
(qui aCURRENT_TIMESTAMP()
comme un alias), diffère deSYSDATE()
dans un subtile façon:Comme indiqué par Erandi, il est préférable de créer votre table avec la
DEFAULT
clause de sorte que la colonne se rempli automatiquement avec l'horodatage lorsque vous insérez une nouvelle ligne:Si vous souhaitez que la date actuelle dans époque format, vous pouvez utiliser UNIX_TIMESTAMP(). Par exemple:
donnerait
Connexes:
Vous pouvez utiliser non seulement
now()
, aussicurrent_timestamp()
etlocaltimestamp()
.La raison principale de l'affichage incorrect d'horodatage est l'insertion de MAINTENANT() avec des guillemets simples! Il n'a pas de travail pour moi dans MySQL Workbench en raison de cette IDE ajouter des guillemets simples pour les fonctions de mysql et je n'ai pas de reconnaître à la fois )
Ne pas utiliser des fonctions avec des guillemets simples, comme dans MySQL Workbench. Il ne fonctionne pas.