Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : test si string (datetime) est correct. [ Archives / Besoin d'aide pour ma base de données ] (tmcuh)

mercredi 3 août 2005 à 23:11:49 | test si string (datetime) est correct.

tmcuh

Voilà un big soucis avec SQL. Je récupère une donnée de type char[10] provenant d'une table (qui ne m'appartient pas) et je dois tester à l'interrieur si le champs char[10] (libre) correspond à une date valide.
En gros ce champs ne sert dans le programme que comme champs de saisie de date, mais si la secretaire tape 12/13/2005, SQL server doit gérer le fait que la date n'est pas valide.
Car moi derrière je vais transformer ce string en datetime mais voilà sql renvoie une erreur sans pouvoir la gérer.
Quelqu'un a -t-il une solution?

Par avance merci,
Laurent

mercredi 3 août 2005 à 23:36:33 | Re : test si string (datetime) est correct.

sim51

Membre Club
Salut,
Pour moi il faut que tu fasse une fonction stockée date_is_valid qui renvoie true si la date est valide.
Pour cela il te suffit de tester si la partie comprise entre le 4 et le 5 caractère est comprise entre 1 et 12, puis suivant le mois si la partie comprise entre le 1 et le 2 caractère fait bien parti du mois, ainsi que les séparateur ( donc le 3, 6 caractère sont bien des / ).
En suite il faut que tu créer un trigger qui avant que tu insère ou que tu update dans ta base te dise si la date est valide
Voilà, Bonne continuation.

N'oubliez pas de cliquer sur réponse acceptée si la réponse vous convient !!!

jeudi 4 août 2005 à 08:14:46 | Re : test si string (datetime) est correct.

tmcuh

hello, tout d'abord merci pour cette réponse on va dire qu'elle me va à moitié, car crée la fonction celà impliquera qu'il faille créer aussi le controle qui va avec, année bisextile, mois < 30 jours, etc... beaucoup plus compliqué donc que de simplement tester si compris dans une fourchette. ex : 29/02/2005, existe pas.
Il n'existe donc aucune fonction prévu dans SQL pour faire celà?

Amicalement TMCUH

jeudi 4 août 2005 à 17:40:56 | Re : test si string (datetime) est correct.

sim51

Membre Club
Re,
Je sais pas si cette fonction existe, cependant le serveur doit bien en posséder une pour que lorsqu'on entre une date non valide dans un champ date, une erreur apparaisse.
Sinon pour les années bisesxile, comme cela revient tout les quatres ans, ba tu fais la différence entre l'année entré et une année bisextile ( je ne me souviens quand c'était la dernière ) puis tu divise par 4 et si le reste est de zero, ba c'est une année bisextile ( cela revient à faire un modulo 4 ).
La fonction n'est pas difficile a programmer, mais un peu longue c'est tout.
Bonne continuation.

N'oubliez pas de cliquer sur réponse acceptée si la réponse vous convient !!!

jeudi 4 août 2005 à 19:49:47 | Re : test si string (datetime) est correct.

coq

Administrateur CodeS-SourceS
Réponse acceptée !
Salut, 

Probablement avec ISDATE.



Cocoricoooooooo !!!!
coq
MVP Visual C#



Cette discussion est classé dans : date, string, sql, champs, datetime


Répondre à ce message

Sujets en rapport avec ce message

DATETIME SQL SERVER AU SECOURS !!!!!! [ par MACHOMAN ] bonjour, j'ai plusieurs pb avec les datetime sous sql server : 1 - j'ai deux champs datetime, dans le premier il y a une date dans le second une heure VB.net 2005 et SQL 2005 Express : Prbl DateTime [ par morleys ] Bonjour à vous tous,Je coince voilà quelque temps sur un probleme d'enregistrement de date SQL 2005.Si j'ai toto = Cdate(Now())        Pour info toto Problème avec SQL EXPRESS est champs date et time [ par drakkard ] Bonjour, bonjourvoici mon pb,sur SQL EXPRESS 2005 je cherche à mettre en place dans ma table des champs date et des champs time.Je n'ai trouvé que le sql server 2000 + probleme de datetime ! [ par jimmy69 ] Bonjour,Dans une db sous sql server 2000 on a une table qui utilise une colonne de type datetime.J'aimerais savoir quelle est la query SQL à utiliser Problème de copnversion Access -> SQL Server 2000 champs Date [ par NHenry ] BonjourJ'ai un problème : Lorsque j'utilise l'assistant d'importation/exportation de données entre Access et SQL Server 2000, il me convertit les cha convert string to date [ par sofiesofie ] salut,j'ai une table "matable"(num, date) tel que date de type datetime.dans ma formulaire la date est de type string (string d="24/05/2008").pour fai [SQL] date - n heures [ par remifalcon ] Bonjour, après avoir chercher différents tuto, je viens vers vous pour ce problème:Je cherche à faire une requète SQL me renvoyant toutes les lignes ( requete SQL avec Sélection sur un champs DateTime dans SQLSERVER 2008 [ par vinok ] Bonjour,Je voudrais faire une selection sur un champs de type DATETIME.je souhaite donc faire la requete suivante: select * from matable where date_ta sql server datetime [ par brmdevinci ] svp j'execute cette requete " select * from personne where date_nais='12/02/1986'" la resultat est un tableau vide sachant que quand j'ai remplit la Probleme dans un requete aide moi svp!! [ par cybercop ] bjr a tt, bon je suis en sql server 2005 express , j'ai 1 prb dans un requette la condition n'est affiche pas aucun resultat .il ma donne un erreur  <


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 4,399 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.