Existe-t-il une valeur ou une commande telle que DATETIME que je peux utiliser dans une requête manuelle 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 valeur DATETIME citée à la fin est l'endroit où je veux ajouter la date et l'heure actuelles.
Réponses:
Vous pouvez utiliser
NOW()
:la source
curdate()
Utilisez CURRENT_TIMESTAMP () ou now ()
Comme
ou
Remplacez date_time par le nom de colonne que vous souhaitez utiliser pour insérer l'heure.
la source
Même s'il existe de nombreuses réponses acceptées, je pense que cette manière est également possible:
Créez votre table "serveurs" comme suit :
Et votre instruction INSERT doit être :
Mon environnement:
Ordinateur portable Windows Core i3 avec 4 Go de RAM, et j'ai fait l'exemple ci-dessus sur MySQL Workbench 6.2 (version 6.2.5.0 Build 397 64 bits)
la source
Oui, vous pouvez utiliser la
CURRENT_TIMESTAMP()
commande.Voir ici: Fonctions de date et d'heure
la source
la source
La bonne réponse est SYSDATE () .
Nous pouvons modifier ce comportement et le faire
NOW()
se comporter de la même manière qu'enSYSDATE()
définissant l' argument de ligne de commande sysdate_is_now surTrue
.Notez que
NOW()
(qui aCURRENT_TIMESTAMP()
un alias), diffère deSYSDATE()
dans une subtile façon:Comme indiqué par Erandi , il est préférable de créer votre table avec la
DEFAULT
clause afin que la colonne se remplisse automatiquement avec l'horodatage lorsque vous insérez une nouvelle ligne:Si vous voulez la date actuelle au format d' époque , vous pouvez utiliser UNIX_TIMESTAMP () . Par exemple:
céderait
En relation:
la source
Dans la conception de bases de données, je recommande vivement d'utiliser Unixtime pour la cohérence et les performances d'indexation / recherche / comparaison.
On peut toujours se convertir à des formats lisibles par l'homme par la suite, en s'internationalisant comme cela est le plus pratique individuellement.
la source
Si vous modifiez la valeur par défaut,
CURRENT_TIMESTAMP
il est plus efficace,la source
Vous pouvez utiliser non seulement
now()
, aussicurrent_timestamp()
etlocaltimestamp()
. La raison principale d'un horodatage d'affichage incorrect est l'insertion de NOW () avec des guillemets simples ! Cela n'a pas fonctionné pour moi dans MySQL Workbench à cause de cet IDE, ajoutez des guillemets simples pour les fonctions mysql et je ne l'ai pas reconnu à la fois)N'utilisez pas de fonctions avec des guillemets simples comme dans MySQL Workbench. Ça ne marche pas.
la source
la source