SQL Server DATETIME2

Résumé: dans ce tutoriel, vous apprendrez à utiliser SQL Server DATETIME2 pour stocker des données de date et d’heure dans une table.

Introduction à SQL Server DATETIME2

Pour stocker la date et l’heure dans la base de données, vous utilisez le type de données SQL Server DATETIME2.

La syntaxe de DATETIME2 est la suivante:

Code language: SQL (Structured Query Language) (sql)

La précision des secondes fractionnaires est facultative. Il va de 0 à 7.

L’instruction suivante illustre comment créer une table composée d’une colonne DATETIME2:

Code language: SQL (Structured Query Language) (sql)

Le DATETIME2 comporte deux composantes : la date et l’heure.

  • La date a une plage allant du 01 janvier 01 (0001-01-01) à décembre 31, 9999 (9999-12-31)
  • L’heure a une plage de 00:00:00 à 23:59:59.9999999.

La taille de stockage d’une valeur DATETIME2 dépend de la précision des secondes fractionnaires. Il nécessite 6 octets pour la précision inférieure à 3, 7 octets pour la précision comprise entre 3 et 4 et 8 octets pour toutes les autres précisions.

Le format littéral de chaîne par défaut du DATETIME2 est le suivant:

Code language: SQL (Structured Query Language) (sql)

Dans ce format:

  • YYYY est un nombre à quatre chiffres qui représente une année, par exemple, 2018. Il va de 0001 à 9999.
  • MM est un nombre à deux chiffres qui représente un mois dans une année, par exemple 12. Il varie de 01 à 12.
  • DD est un nombre à deux chiffres qui représente un jour d’un mois spécifié, par exemple 23. Il va de 01 à 31.
  • hh est un nombre à deux chiffres qui représente l’heure. Il varie de 00 à 23.
  • mm est un nombre à deux chiffres qui représente la minute. Il varie de 00 à 59.
  • ss est un nombre à deux chiffres qui représente le second. Il varie de 00 à 59.
  • Les secondes fractionnaires sont de zéro à un nombre à sept chiffres compris entre 0 et 9999999.

Exemple SQL Server DATETIME2

L’instruction suivante crée une nouvelle table qui a une colonne created_at dont le type de données est DATETIME2:

Code language: SQL (Structured Query Language) (sql)

Pour insérer la date et l’heure actuelles dans la colonne created_at, vous utilisez l’instruction INSERT suivante avec la fonction GETDATE():

Code language: SQL (Structured Query Language) (sql)

La fonction GETDATE() est similaire à la fonction NOW() dans d’autres systèmes de base de données tels que MySQL

Pour insérer une valeur littérale dans la colonne DATETIME2, vous utilisez l’instruction suivante:

Code language: SQL (Structured Query Language) (sql)

Si vous souhaitez définir la valeur par défaut de la colonne created_at sur la date et l’heure actuelles, vous utilisez l’instruction ALTER TABLE suivante:

Code language: SQL (Structured Query Language) (sql)

Dans cette instruction, nous utilisons CURRENT_TIMESTAMP comme valeur par défaut pour la colonne created_at. Notez que CURRENT_TIMESTAMP renvoie la même valeur que la fonction GETDATE().

Maintenant, lorsque vous insérez une nouvelle ligne dans la table sans spécifier la valeur de la colonne created_at, SQL Server utilisera la valeur de date et d’heure actuelle pour cette colonne:

Code language: SQL (Structured Query Language) (sql)

Dans ce tutoriel, vous avez appris à utiliser le type de données SQL Server DATETIME2 pour stocker des données de date et d’heure dans une table.

You might also like

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.