Acomba (Forum)
Pourquoi ne pas devenir membre du forum ?

Identifiez-vous ou Inscrivez-vous afin d'accéder à l'inrégralité du forum:
Accès à toutes les catégories du forum,
Entraide entre les 6 500 membres, et ce nombre s'accroît quotidiennement!

Notez que ce forum est indépendant de la société Acceo Solutions, éditrice du logiciel Acomba.
Connexion

Récupérer mon mot de passe


[résolu]Concaténation SQL

Voir le sujet précédent Voir le sujet suivant Aller en bas

[résolu]Concaténation SQL

Message  Jeremie le Jeu 21 Juil 2011 - 9:51

Bonjour,

J'ai encore une erreur idiote ...

Cette requête fonctionne dans ma BD accès lier à ma BD Acomba, mais ne fonctionne pas dans mon soft.
Code:

Select TeUnique,(TeNumber &  ' - '  &  TeDescription) as Display From Territory


ERROR [42000] [Acomba ODBC Driver]Expected lexical element not found: )

J'ai essayer :

Code:

Select TeUnique,TeNumber &  ' - '  &  TeDescription as Display From Territory

ERROR [42000] [Acomba ODBC Driver]Expected lexical element not found: FROM


Est-ce que quelqu'un sait c'est quoi le fichu caractère de concaténation dans Acomba ?
Vivement la version SQLserver avec du vrais SQL standard ....

Merçi.


Dernière édition par Jeremie le Lun 25 Juil 2011 - 9:26, édité 1 fois
avatar
Jeremie

Nombre de messages : 108
Date d'inscription : 11/08/2010

Fiche d'Entreprise
Nom de l'entreprise:

Voir le profil de l'utilisateur http://bourgeois-sc.com

Revenir en haut Aller en bas

Re: [résolu]Concaténation SQL

Message  hench le Jeu 21 Juil 2011 - 12:48

Fais cette concaténation en programmation plutôt que par la requête !!

Sinon, sans mettre ma main au feu, peut-être que "concat" peut faire l'affaire :

Code:

SELECT TEUnique, CONCAT(TENumber, ' - ', TEDescription) AS Display....

Je ne peux pas tester désolé..

Good luck!


Dernière édition par hench le Jeu 21 Juil 2011 - 13:01, édité 1 fois

hench

Nombre de messages : 163
Date d'inscription : 30/12/2008

Fiche d'Entreprise
Nom de l'entreprise:

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: [résolu]Concaténation SQL

Message  Jeremie le Jeu 21 Juil 2011 - 13:00

Concat ne fonctionne pas et je peux pas ... non, c'est plus je ne veux pas. Very Happy Y aller par programmation.

J'ai coder une fonction pour populer mes combobox et j'ai pas envis de bousiller mon architecture juste parce qu'Acomba permet pas la concaténation.

Ça va rester en grille.

j'ai déjà suffisamment de fonction complétement déformer ...
avatar
Jeremie

Nombre de messages : 108
Date d'inscription : 11/08/2010

Fiche d'Entreprise
Nom de l'entreprise:

Voir le profil de l'utilisateur http://bourgeois-sc.com

Revenir en haut Aller en bas

Re: [résolu]Concaténation SQL

Message  hench le Jeu 21 Juil 2011 - 13:38

http://www.sqlbook.com/SQL/SQL-CONCATENATE-24.aspx

Code:

-- SQL Server / Microsoft Access
SELECT FirstName + ' ' + LastName As FullName FROM Customers

Peut-être que cela ferait l'affaire ?

hench

Nombre de messages : 163
Date d'inscription : 30/12/2008

Fiche d'Entreprise
Nom de l'entreprise:

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: [résolu]Concaténation SQL

Message  Jeremie le Jeu 21 Juil 2011 - 13:58

tester aussi.

Edit :

J'ai envoyé ma question au support technique.
Vont finir par me bloquer à force de le leur poser 36 000 questions du genre.
Razz

Edit 2

Bah ... même le staff sais pas.

Comme vous le savez, le pilote ODBC respecte le standard SQL 92. Voici des explications qui pourront vous aidez à poursuivre votre travail. Lorsqu’on veut utiliser une fonction scalaire avec le pilote ODBC pour Acomba, il est important de respecter la syntaxe suivante :

{FN FonctionScalaire}

Ainsi, pour concaténer la valeur de deux champs d’une table du pilote ODBC, vous pourriez tenter d’exécuter la méthode comme suit : {FN CONCAT( string_exp1,string_exp2)}

Il est fort probable que vous soyez en mesure de régler votre problème en respectant la syntaxe qui est identifié ci-dessus.

Si vous avez d’autres questions, n’hésitez pas à communiquer avec nous à nouveau.

Salutations,

Le résultat : ERROR [S0000] [Acomba ODBC Driver]Invalid argument to scalar function: CONCAT


Fonctionne encore moins avec les autres variantes.

Tous se que je veux, c'est une colone qui affiche
999 -
01 - Laval
etc

Ça va donner quoi quand je vais transféré mon code en .net 1.1 en .net 4.0 ??
avatar
Jeremie

Nombre de messages : 108
Date d'inscription : 11/08/2010

Fiche d'Entreprise
Nom de l'entreprise:

Voir le profil de l'utilisateur http://bourgeois-sc.com

Revenir en haut Aller en bas

Re: Concaténation SQL

Message  PlanteG le Dim 24 Juil 2011 - 13:05

J'y vais de mes commentaires d'observateurs.

En ce qui concerne les 2 premiers messages d'erreur
ERROR [42000] [Acomba ODBC Driver]Expected lexical element not found: )
ERROR [42000] [Acomba ODBC Driver]Expected lexical element not found: FROM
ça laisse entendre que ) ou FROM ne sont pas trouvés. Est-il possible que l'usage du - trompe l'interpréteur de commande ? Je serais curieux de savoir ce qui se passerait si le - était remplacé par un autre caractère comme /.

Pour ce qui est de {FN FonctionScalaire}, pouvez-vous nous montrer la requête complète qui amène le message d'erreur ? Peut-être qu'un oeil extérieur verra quelque chose Wink .
avatar
PlanteG

Nombre de messages : 988
Ville : Québec
Date d'inscription : 11/07/2007

Fiche d'Entreprise
Nom de l'entreprise: Informatique Gilles Plante

Voir le profil de l'utilisateur http://ingp.ca

Revenir en haut Aller en bas

Re: [résolu]Concaténation SQL

Message  Jeremie le Lun 25 Juil 2011 - 9:25

Non, la requête est correcte.


C'est l'ODBC Acomba qui est juste trop ... .... .... exigeant.

Lorsque vous tentez d’exécuter la fonction scalaire « Concat() » lorsque vous utilisez le pilote ODBC pour Acomba, l’erreur dont la description est « Invalid argument to scalar function: CONCAT » survient parce que le type d’un champ que vous avez envoyé en paramètre de la fonction scalaire « Concat() » est un « entier » eu lieu d’une « string ». Pour exécuter avec succès la fonction scalaire « Concat() », il est important que les deux champs qui sont envoyés en paramètre de la fonction soit de type « string ». Par exemple, pour concaténer avec succès deux champs de type string de la table Customer, il est possible d’envoyer au pilote ODBC pour Acomba la requête SELECT qui est ci-dessous :

Select {FN CONCAT(CuNumber, CuSortKey)} From Customer


Donc en gros, je ne peux pas faire se que je veux faire parce que TeNumber est un nombre et Tedescription une chaine de caractère.

ET étrangement, c'est la même chose en Transac-SQL ... scratch

Comprend pas, je suis sur d'avoir fait ça plein de fois.




avatar
Jeremie

Nombre de messages : 108
Date d'inscription : 11/08/2010

Fiche d'Entreprise
Nom de l'entreprise:

Voir le profil de l'utilisateur http://bourgeois-sc.com

Revenir en haut Aller en bas

Re: [résolu]Concaténation SQL

Message  PlanteG le Lun 25 Juil 2011 - 12:02

Y a-t-il une fonction builtin qui convertit un nombre en chaîne de caractère ?
avatar
PlanteG

Nombre de messages : 988
Ville : Québec
Date d'inscription : 11/07/2007

Fiche d'Entreprise
Nom de l'entreprise: Informatique Gilles Plante

Voir le profil de l'utilisateur http://ingp.ca

Revenir en haut Aller en bas

Re: [résolu]Concaténation SQL

Message  Jeremie le Lun 25 Juil 2011 - 12:38

en SQL c'est Cast.

Code:
Select Cast(TeNumber as varchar) + ' - ' + TeDescription from territories

Avec l'ODBC Acomba ... je vais voir.
avatar
Jeremie

Nombre de messages : 108
Date d'inscription : 11/08/2010

Fiche d'Entreprise
Nom de l'entreprise:

Voir le profil de l'utilisateur http://bourgeois-sc.com

Revenir en haut Aller en bas

Re: [résolu]Concaténation SQL

Message  Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Voir le sujet précédent Voir le sujet suivant Revenir en haut


 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum