Maison >base de données >tutoriel mysql >Comment définir la valeur par défaut d'une colonne d'horodatage sur l'heure actuelle dans SQLite ?

Comment définir la valeur par défaut d'une colonne d'horodatage sur l'heure actuelle dans SQLite ?

Patricia Arquette
Patricia Arquetteoriginal
2025-01-04 11:51:35417parcourir

How to Set a Timestamp Column's Default Value to the Current Time in SQLite?

Création de colonnes d'horodatage avec la valeur par défaut « Maintenant »

Vous avez peut-être rencontré une erreur en essayant de créer une table avec une colonne d'horodatage qui a une valeur par défaut de DATETIME('now'). Lorsque vous avez exécuté l'instruction suivante :

CREATE TABLE test (
    id INTEGER PRIMARY KEY AUTOINCREMENT, 
    t TIMESTAMP DEFAULT DATETIME('now')
);

vous avez reçu un message d'erreur.

Solution

Dans SQLite version 3.1.0 et versions ultérieures, vous pouvez utiliser CURRENT_TIMESTAMP dans la clause DEFAULT. Ce faisant, la nouvelle ligne se verra attribuer une représentation textuelle de la date et/ou de l'heure UTC actuelle.

CREATE TABLE test (
    id INTEGER PRIMARY KEY AUTOINCREMENT,
    t TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

Lors de l'utilisation de CURRENT_TIMESTAMP :

  • CURRENT_TIME : le format par défaut est "HH:MM:SS"
  • CURRENT_DATE : le format par défaut est "AAAA-MM-JJ"
  • CURRENT_TIMESTAMP : le format par défaut est "AAAA-MM-JJ HH:MM:SS"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn