プロが教えるわが家の防犯対策術!

お世話になります。
VB.NET とAS400(DB2)を使っています。
以下のデータセットでエラーが発生します。
Dim dr As DataRow()
dr = dsData_table.Tables(0).Select("CUSTOMER = '00001' AND PRODUCT1 || PRODUCT2 = 'A001B001' ")
実行した時に
「System.Data.SyntaxErrorException: 構文エラー : '|' 演算子の前にオペランドがありません。」が出ています。
誰かお分かりになりますでしょうか?
教えてください。

A 回答 (1件)

MSDNより。


http://msdn2.microsoft.com/ja-jp/library/det4aw5 …
>引数 filterExpression を作成するには、フィルタを作成するときに DataColumn クラスの Expression プロパティの値に適用する規則と同じ規則を使用します。

↓DataColumn クラスの Expression プロパティ
http://msdn2.microsoft.com/ja-jp/library/det4aw5 …

DB2のSQL感覚で「||」を使われたのだと思いますが、filterExpressionで||は利用できません。
連結は+で出来ると思います。

dr = dsData_table.Tables(0).Select("CUSTOMER = '00001' AND PRODUCT1 + PRODUCT2 = 'A001B001' ")
    • good
    • 0
この回答へのお礼

どうも有り難う御座いました。
助かりました。

お礼日時:2008/03/31 16:20

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています