begin process at 2010 03 17 04:49:50
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive SQL

 > 

Archives

 > 

Besoin d'aide pour ma base de données

 > 

test si string (datetime) est correct.


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

test si string (datetime) est correct.

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ée 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 Comparer date('y-m-d') avec un champs DATETIME [ par reedbedroom ] Bonjour à tous, Je recherche à pouvoir comparer une date simple obtenu par date('y-m-d')avec un champs datetime situé dans une table. Mon souci est


Nos sponsors


Sondage...

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Photothèque

 
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

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,499 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales