Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1159 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [sql] vérifier le format d'une colonne

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[sql] vérifier le format d'une colonne

n°1570786
scoyd
Posté le 06-06-2007 à 11:23:41  profilanswer
 

Bonjour, je voudrais ecrire une requete qui verifie que le format d'une colonne est bien en yyyy-mm-dd, et qui retourne ce que vous voulez pour dire si oui ou non c'est le bon format :D
 
par exemple j'ai une table tab et une colonne date_cree, je veux etre sur que dans chaque ligne de cette colonne, ma date est donc du yyyy-mm-dd
 
merci d'avance pour votre aide

mood
Publicité
Posté le 06-06-2007 à 11:23:41  profilanswer
 

n°1570790
masklinn
í dag viðrar vel til loftárása
Posté le 06-06-2007 à 11:25:53  profilanswer
 

Pourquoi ne pas ajouter une contrainte empêchant que le format ne soit pas bon [:petrus dei]
 
Ou, encore mieux, pourquoi ne pas utiliser directement un datatype date/time qui est fait pour ça [:mlc]


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1570793
scoyd
Posté le 06-06-2007 à 11:31:48  profilanswer
 

En fait le truc c'est que je suis dans un grosse boite qui a deja fait son boulot à ce niveau là.
Moi je suis la que pour faire des tests, maintenant je suis sur que de leur coté ils ont bien fait leur boulot (test en amont), mais moi mon boulot c'est de montrer au client en balancant un test devant eux que tout marche bien :p
Donc pas le choix lol

n°1570807
casimimir
Posté le 06-06-2007 à 11:45:06  profilanswer
 

le plus simple c'est de caster ta chaine yyyy-mm-dd en date dans une fonction qui choppe l'exception si elle se produit.
 
genre en oracle:
 

Code :
  1. CREATE OR REPLACE FUNCTION is_date(vvalue varchar2,vmask) RETURN integer IS
  2. tmpVar DATE;
  3. BEGIN
  4.    tmpVar := to_date(vvalue,vmask);
  5.    RETURN 1;
  6.    EXCEPTION
  7.      WHEN OTHERS THEN
  8.       return 0;
  9. END is_date;


 
puis la tu ferais un select
 

Code :
  1. select date_format_caractere,is_date(date_format_caractere,'YYYY-MM-DD') date_valide
  2. from ta_table

n°1570820
scoyd
Posté le 06-06-2007 à 11:51:41  profilanswer
 

J'ai pas encore testé, mais je voudrais savoir si c'est possible lorsqu'on a un acces qu'en lecture? vu que je vois un "create"

n°1570825
casimimir
Posté le 06-06-2007 à 11:57:45  profilanswer
 

tu ne peux même pas de créer une fonction quelque part?  
parceque si tu dois t'amuser a écrire en sql un check de date c'est un peu du temps perdu.
 
faut faire le joli avec ton dba alors


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [sql] vérifier le format d'une colonne

 

Sujets relatifs
requete sql : arrondir une colonne a 2 décimales[sql] rechercher un format date
[EXCEL]identifier et ramener titre colonne from contenu cellule(EXCEL) Somme en fonction du format ou de la police
Vérifier la présence d'un programme local[VBA-E]verifier si une feuille est ouverte
Requête préparée en insert et colonne "not null"format prix mysql
Mois en titre de colonne[DOS] recopier des lignes au format DOS
Plus de sujets relatifs à : [sql] vérifier le format d'une colonne


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR