2

Windows CE 5.0 デバイスに SQLAnywhere ソリューションを展開していますが、最初の SQL ステートメントでエラーが発生しています。

定義は...

Dim dbf As String = "dbf=\Program Files\sfpwarehousescanner\BRAINY2_remote.udb"
Public conn As ULConnection = New iAnywhere.Data.UltraLite.ULConnection(dbf)
Public cmdDel As ULCommand
Public cmdSel As ULCommand
Public cmdUpd As ULCommand

問題のあるコード...

Public Sub GetDefaults()
  Dim SQL As String = ""
  Try
    SQL = "SELECT ISNULL(Dot, 'T'), ISNULL(Distance, 'L'), ISNULL(Force_Change, 'Y') " _
    & "FROM cims.scan_settings " _
    & "WHERE username = '" + UName.ToString + "'"

    cmdSel = conn.CreateCommand()
    cmdSel.CommandText = SQL

    Dim ULReader As ULDataReader

    ULReader = cmdSel.ExecuteReader

私たちが受け取っているエラーは...

Error (level = 7) in General.GetDefaults: 
IDS_AMP_INVALID_OPER_ON_EXECUTE_CMD - 
SELECT ISNULL(Dot, 'T'), ISNULL(Distance, 'L'), ISNULL(Force_Change, 'Y') 
FROM cims.scan_settings WHERE username = 'test'

どんな助けでも大歓迎です!

SQLを単純化して「SELECT * FROM scan_settings」にしましたが、まだ同じ問題があります。

4

2 に答える 2

2

アプリにulnet12.dllとulnetclient12.dllを含めていませんでした。今はうまく動作します。

于 2011-07-28T21:21:00.770 に答える
0

エラー メッセージは、データベースが要求されている比較を実行できないことを示しているようです。ISNULL の場合、すべての式が比較可能でなければなりません (http://dcx.sybase.com/index.html#1201/en/dbreference/isnull-function.html)。Dot、Distance、および Force_Change データ型が CHAR と比較できない場合、それが問題である可能性があります。

于 2011-07-12T15:38:11.673 に答える