0

クエリの実行時にユーザーにパラメーターの入力を求めるクエリを Excel で作成しようとしています。MS Query を使用し、ODBC 経由で Sybase データベースに接続します。これが私のクエリです:

SELECT *
FROM myTable
WHERE myTable.myID = CAST( ?  AS INTEGER)

これは私にエラーを与えます:

[SYBASE][ODBC Sybase ドライバー]データベースでは、負のスケール値は許可されていません。パラメータ 1 のエラー

以下のクエリは正常に動作します

SELECT *
FROM myTable
WHERE myTable.myID = CAST( 676458  AS INTEGER)

sybase では暗黙的な変換が許可されておらず、myID が NUMERIC であるため、キャストが必要です。これまでに試したこと

  • Cast() と Convert() の両方
  • NUMERIC、INT、BIGINT、FLOAT などのキャストと変換によるさまざまな型
  • Google と Stackexchange でエラーを検索しても、何も役に立ちませんでした
  • sybase、excel、SQL Anywhere のドキュメントを検索し、別の構文を試す

私はかなり立ち往生しています。これを解決する方法はありますか?

4

0 に答える 0