2009-05-19 9 views
3

そのクエリを実行して結果を返す内部アプリケーションにクエリを渡しています。接続はCSVファイルに接続されています。プロバイダ= Microsoft.Jet.OLEDB.4.02つの文字列をJet.OLEDB.4.0プロバイダに連結する方法

1つの列の文字列に参加したいのですが、エラーが表示されます。

これを行うことができますか、誰でもその方法を知っていますか?私がやっているの

例:

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

エラーは、次のとおりです。 - エラー - プロバイダは、Double値を決定することができませんでした。たとえば、行が作成されたばかりで、Double列のデフォルトは使用できず、コンシューマは新しいDouble値をまだ設定していませんでした。

私が参加している値の両方が文字列として認識されているようではありません。 LinePrimaryKeys

がエラーを停止するよう+ PurchaseOrderNo 'デリミタ' PurchaseOrderNo +とLinePrimaryKeys よう+ ContractNo 'デリミタ' PurchaseOrderNo +を交換例えば

。だから私はどのように文字列にキャストするのですか?

これは機能しません。 ContractName + 'CN' + CAST(ContractNameデータ型はnvarchar(50)など)LinePrimaryKeys

あなたは &代わりの +を使用する必要が
+0

エラーは何ですか? –

答えて

3

として。

&は、文字列の連結を行い、+は(数値)加算を行います。 &を使用すると、すべてのオペランドが自動的に文字列にキャストされます。

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

エラーが表示されます。 - エラー - EntityNameの解析中にエラーが発生しました – Jiminy

+0

これはXML/XHTMLエラーメッセージです。あなたは何をやっているのですか? –

+0

このエラーがXMLファイルから来ている可能性があります。 – Jiminy

関連する問題