2009-05-19 10 views
3

Je passe une requête à une application interne qui exécute cette requête et renvoie le résultat, la connexion est à un fichier CSV et je me connecte avec le Provider = Microsoft.Jet.OLEDB.4.0Comment concaténer deux chaînes avec le fournisseur Jet.OLEDB.4.0

Je voudrais joindre des chaînes dans une colonne mais j'obtiens une erreur.

Est-ce que cela peut être fait, est-ce que quelqu'un sait comment le faire?

Exemple de ce que je fais:

select 
PurchaseOrderNo, 
PurchaseOrderDate, 
Description, 
Quantity, 
ContractName + 'delimiter' + ContractNo as LinePrimaryKeys 
from [POImport baseline.csv] 

l'erreur est: - Erreur - Le fournisseur n'a pas pu déterminer la valeur double. Par exemple, la ligne a été créée, la valeur par défaut de la colonne Double n'était pas disponible et le consommateur n'avait pas encore défini de nouvelle valeur Double. D'après les autres lectures, il semblerait que les deux valeurs que je rejoins ne soient pas reconnues comme des chaînes.

par exemple le remplacement PurchaseOrderNo + 'délimiteur' + ContractNo comme LinePrimaryKeys avec PurchaseOrderNo + 'délimiteur' + PurchaseOrderNo comme LinePrimaryKeys

arrête l'erreur. Alors maintenant, comment puis-je Cast à la chaîne?

Cela ne fonctionne pas. ContractName + 'cn' + CAST (ContractName nvarchar (50)) comme LinePrimaryKeys

+0

Quelle est l'erreur? –

Répondre

3

Vous devez utiliser & au lieu de +.

&-t concaténation de chaîne, + effectue une addition (numérique). L'utilisation de & convertit automatiquement tous les opérandes en chaînes.

select 
PurchaseOrderNo, 
PurchaseOrderDate, 
Description, 
Quantity, 
PurchaseOrderNo & 'delimiter' & ContractNo as LinePrimaryKeys 
from [POImport baseline.csv] 
+0

Vous obtenez l'erreur: - Erreur - Une erreur s'est produite lors de l'analyse EntityName – Jiminy

+0

Ceci est un message d'erreur XML/XHTML. Que faites-vous :) –

+0

Vous avez peut-être raison, il semble que cette erreur provienne du fichier XML auquel j'ajoute la requête. – Jiminy

Questions connexes