Ori de câte ori lucrăm cu baze de date, constatăm că aproape fiecare tabel conține o coloană Date. La urma urmei, data datelor joacă un rol important în analiza lor. Stocarea datelor într-un format specific sau ușor de înțeles este foarte importantă. În acest articol, vom afla cum putem specifica un format de dată pe SQL Server.
Să creăm baza noastră de date și tabelul demonstrativ.
Pasul 1: Creați o bază de date
Utilizați următoarea comandă pentru a crea o bază de date.
cuvânt cheie java volatil
Interogare:
CREATE DATABASE User_details;>
Pasul 2: Utilizați baza de date
Interogare:
USE User_details;>
Pasul 3: Definirea tabelului
Avem următorul tabel GFG_user în baza de date.
Interogare:
CREATE TABLE GFG_user(Id INT NOT NULL,Dt DATE, Address VARCHAR(100),Dt_FORMATTED AS (convert(varchar(255), dt, 104)), PRIMARY KEY (Id) );>
Ieșire:

Aici, am creat o coloană numită Dt_FORMATTED unde vom salva data formatată.
Acum, vedem CONVERTIT() funcţie. Funcția CONVERT() pur și simplu convertește o valoare de orice tip într-un tip de date specificat.
Sintaxă:
CONVERT ( data_type ( length ) , expression , style )>
Folosind această funcție, aruncăm șirul la o dată. În locul argumentării stilului, am menționat '104' . Este un cod numeric pentru a specifica formatul datei.
Verificați acest tabel pentru a vedea diferite coduri utilizate pentru diferite formate:
Cu secolul(aa) | Cu secolul(aaaa) | Standard | Intrare ieșire |
| – | 0 sau 100 (1.2) | Implicit pentru datetime și smalldatetime | lun dd aaa hh: miAM (sau PM) |
| 1 | 101 | NE. | 1 = mm/zz/aa 101 = mm/zz/aaaa |
| 2 | 102 | ANSI | 2 = aa.ll.zz 102 = aaaa.ll.zz |
| 3 | 103 | britanic/francez | 3 = zz/ll/aa 103 = zz/ll/aaaa |
| 4 | 104 | limba germana | 4 = zz.ll.aa 104 = zz.ll.aaaa |
| unsprezece | 111 | JAPONIA | 11 = aa/mm/zz 111 = aaaa/ll/zz |
| 12 | 112 | ISO | 12 = ammzz 112 = aaaammzz |
| – | 13 sau 113 (1.2) | Implicit Europa + milisecunde | zz luni aaaa hh:mi:ss:mmm (24h) |
| – | 131 (2) | Hijri (5) | zz/ll/aaaa hh:mi:ss:mmmAM |
Aici, am menționat doar cele 10 formate cele mai utilizate.
Pasul 4: Introduceți valori
Următoarea comandă este folosită pentru a introduce valori în tabel.
sortează lista de matrice java
Interogare:
SET DATEFORMAT dmy; INSERT INTO GFG_user (Id, Dt, Address) VALUES ('1','23.11.2021', 'German');> 
În această interogare, folosim cel FORMATUL DATEI setare.
Sintaxă:
SET DATEFORMAT format>
Când inserăm șirul, serverul va încerca să convertească șirul la data înainte de a-l introduce în tabel. Deoarece nu se poate spune dacă punem luna înaintea datei sau data înaintea lunii. De exemplu, să presupunem că încercați să introduceți 06.07.2000. Serverul nu poate detecta dacă data este 6 iulie sau este 7 iunie. Deși folosește setările de localizare ale contului de utilizator care funcționează pentru a-și da seama că nemenționarea DATEFORMAT vă poate da o eroare, deoarece de cele mai multe ori contul care rulează operațiunea este setat în format SUA, adică - Luna Zi Anul (luna) .
Eroarea a fost cauzată deoarece am vrut să o salvăm ca dmy , nu mdy . Cu toate acestea, utilizarea DATEFORMAT vă va ajuta să scăpați de el.
Ieșire:

Am terminat cu tabelul nostru, acum să verificăm dacă obținem rezultatul dorit sau nu.
Pasul 5: Vizualizați datele din tabel
Interogare:
SELECT * FROM GFG_user;>
Ieșire:

Am primit cu succes formatul nostru german Data în coloana Dt_FORMATTED.
O altă abordare pentru a introduce data în baza de date:
De asemenea, putem introduce data folosind funcția „to_date” în sql. Se poate folosi următoarea sintaxă:
TO_DATE([value], [format]);>
Formatul datei poate fi de diferite tipuri, cum ar fi: „zz-ll-aaaa” , „aaaa-mm-zz” , „ll-zz-aaaa” .
Exemplu:
CREATE TABLE GFG_INTERN (e_name VARCHAR(20), e_id number, joiningDate date); INSERT INTO GFG_INTERN VALUES ('FirstIntern', 001, to_date('2022-12-12','yyyy-mm-dd')); INSERT INTO GFG_INTERN VALUES ('SecondIntern', 002, to_date('2022-Dec-12','yyyy-mm-dd')); INSERT INTO GFG_INTERN VALUES ('ThirdIntern', 003, to_date('30-12-2022','dd-mm-yyyy')); INSERT INTO GFG_INTERN VALUES ('FourthIntern', 004, to_date('12-31-2022','mm-dd-yyyy')); SELECT * FROM GFG_INTERN;> 
comenzi sql
Ieșire:

Ieșire