Les dates et les heures possèdent une place importante dans des applications SQL, dans la mesure ou elles permettent d'ajouter une dimension temporelle aux enregistrements d'une base de données.
Dans de nombreuses applications SQL, des données temporelles sont associées à diverses informations lors de leur saisie manuelle ou automatique.
Par exemple, un nouvel abonné représenté par des champs tels que le nom, le prénom et l'adresse postale entre autres, pourrait également saisir une date de naissance par l'intermédiaire d'un formulaire, puis au moment de l'ajout de l'enregistrement dans la base de données, une date et éventuellement une heure seraient insérées automatiquement dans la ligne de données afin de conserver un historique des demandes d'abonnement. |
|
En outre, les dates et les heures peuvent permettre de sélectionner des jeux d'enregistrements avec des requêtes contenant des conditions temporelles. Ainsi, un commercial aurait la possibilité de consulter l'ensemble des individus ayant souscrit un abonnement dans un intervalle de temps précis.
Le format des dates et des heures dépend souvent des différentes implémentations SQL. Néanmoins, des formats standardisés ont été spécifiés afin d'éviter une trop grande hétérogénéité.
Format |
---|
Description |
AAAA-MM-JJ |
représente un format de date respectivement, année-mois-jour, avec un intervalle allant de 0001-01-01 jusqu'à 9999-12-31. |
HH:MN:SS.nnn |
représente un format horaire respectivement, heures:minutes:secondes, allant de 00:00:00 jusqu'à 23:59:61.999 |
Le standard ANSI prévoit trois types de données principaux de date et d'heure. D'autres types peuvent exister selon les implémentations.
Type de données |
---|
Description |
DATE = AAAA-MM-JJ |
stocke une date (ex: 10/01/2002). |
TIME = HH:MN:SS.nnn |
stocke une heure (ex: 10:12:42) |
TIMESTAMP = AAAA-MM-JJ HH:MN:SS.nnn |
stocke une valeur de date et d'heure combinées. |
Les serveurs SQL tels que SYBASE et SQL Server utilisent les types de données datetime combinant les formats de date et d'heure, ainsi que SMALLDATETIME identique au précédent hormis que l'intervalle de date autorisé est plus restreint.
Les types de données de date et d'heure sont divisibles en plusieurs éléments distincts.
Elément |
---|
Description |
YEAR = AAAA |
stocke une année, allant de 0001 jusqu'à 9999. |
MONTH = MM |
stocke le mois, allant de 01 jusqu'à 12 |
DAY = JJ |
stocke le jour d'une date, allant de 01 jusqu'à 31. |
HOUR = HH |
stocke les heures, allant de 00 jusqu'à 23 |
MINUTE = MN |
stocke les minutes, allant de 00 jusqu'à 59. |
SECONDE = SS.nnn |
stocke les secondes, allant de 00 jusqu'à 61.999 |
Diverses commandes et fonctions permettent une manipulation aisée des dates et des heures dans des applications SQL.