Erreur d'execution de requettes sous sql server

Erreur d'execution de requettes sous sql server - SQL/NoSQL - Programmation

Marsh Posté le 25-04-2006 à 12:14:23    

bonjour,
 
J'ai une erreur d'execution de requettes sous sql server.
je fais appel a une table et je veux recuperer tout les tuples d'un seul champ avec seulement le premiere partie du champ.
 
Bref, en gros, la table s'appelle :  290_ResultatSequence , le champ IdSeqTest.
ce champ est de type '61007021AA088--E00 S_CentFrdAPI', et je veux recuperer juste la premiere partie de ce champ soit '1007021AA088'. Soit jusqu'au premier caractere separateur '-'.
 
Voici mon code :

Code :
  1. SELECT SUBSTRING([290_ResultatSequence].IdSeqTest, 1, PATINDEX('%-%', [290_ResultatSequence].IdSeqTest)-1)
  2. FROM [290_ResultatSequence]
  3. GO


 
et l'erreur lors de l'execution ( ca passe bien a la compilation par contre) :
Paramètre de longueur incorrect passé à la fonction de sous-chaîne.
 
merci de vos reponses  :bounce:  :bounce:  :bounce:  

Reply

Marsh Posté le 25-04-2006 à 12:14:23   

Reply

Marsh Posté le 25-04-2006 à 12:41:16    

D'après le message d'erreur, le problème se situe dans la partie concernant la longueur, c'est-à-dire dans PATINDEX('%-%', [290_ResultatSequence].IdSeqTest)
 
Peut-être que l'une des valeurs de la colonne 290_ResultatSequence est nulle ou ne contient pas de tiret.
Ou bien, peut-être que l'expression régulière, le pattern, n'est pas tout à fait ce qu'il faudrait, parce qu'il est possible que le tiret soit un caractère spécial qu'il faille protéger avec un antislash devant ou par un autre moyen.

Reply

Marsh Posté le 25-04-2006 à 13:36:21    

ok merci je vais regarder tout ca..........

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed