問題タブ [embedded-sql]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
397 参照

informix - 32 ビットまたは 64 ビットの Informix Csdk 3.7 を選択する方法は?

私の開発者マシンは Windows 7 64 ビットで、32 ビットと 64 ビットのプログラムがいくつかあります。

3.70FC3 と 3.70TC3 のアップグレード以来、VisualStudio 2010 sp1 でのコンパイルに問題があります。

おそらく、64 ビットを 32 ビットに変更するために必要な構成がいくつかあります。または、両方の csdk を持つことがサポートされていない可能性があります

0 投票する
1 に答える
318 参照

c - 「col = ? or col = ? or col = ?」どちらが速いか または、informix (.ec/esql) を使用した C の「(?, ?, ?) の col の場所」?

私たちのコードは C で書かれており、DB は Informix です。ESQL プログラムでコードの最適化を行っているところ、次のクエリが見つかりました。

UPDATE [TABLE] SET [PRIMARY KEY COLUMN] = [NEW KEY] WHERE COL = ? または COL = ? ...

where 句の列数は動的に準備されます。where 句の準備を停止して更新を実行し、戻って残りの準備を開始する上限カウント チェックがあります。UPPER_MARK は「30」です

if ( where_parameter_count >= UPPER_MARK )
__ update を実行
__ __ clean_and_continue; /* 準備を再開します */__

WHERE .. OR を WHERE ... IN に置き換えることを考えました

UPDATE [TABLE] SET [PRIMARY KEY COLUMN] = [NEW KEY] WHERE COL IN (?, ? ...)

これは「どこか」よりも高速ですか?

0 投票する
1 に答える
179 参照

sql - 埋め込み SQL の If 条件

これは、私の組み込み SQL プログラムの一部のコードです。

エラーが発生します

「BEGIN-OF-STATEMENT」の後に、予期しないトークン「IF EXISTS(SELECT * FROM table_name」が見つかりました。予期されるトークンには、「」が含まれる可能性があります。SQLSTATE=42601

誰が何が悪いのか教えてもらえますか?

0 投票する
1 に答える
3417 参照

sql - SQL アプリケーション エラー

これは埋め込みSQLのコードです(c)

このコードでは、次のエラーが発生します。

SQLCODE : 4294966876 SQL0420N 関数 "DECFLOAT"
の文字ストリング引数に無効な文字が見つかりました。
SQLSTATE=22018

問題が何であるかを教えてもらえますか?

0 投票する
1 に答える
843 参照

oracle - Oracle 配列から Cobol へのレコードの移動が発生する

Oracle から Cobol 配列にレコードを移動するにはどうすればよいですか? 単一のフィールドを移動すると、すべてが期待どおりに機能します。Oracle VARRAY でレコードを移動しようとすると、機能しません。PRO*COBOL プリコンパイラは、次のエラー メッセージを表示します。

オラクル型:

COBOL ESQL 匿名 PL/SQL ブロックのスニペット:

COBOL 変数宣言:

0 投票する
2 に答える
947 参照

oracle - Informix「SERIAL」からPro*CのOracle NUMBER/Sequence/Triggerへ

一部の Informix ESQL を Oracle Pro*C に変換しようとしています。既存の Informix コードでは、「SERIAL」データ型を使用して、列が自動的にインクリメントされることを示していました。Oracle のドキュメントによると、Oracle Migration Workbench for Informix はこれを処理できるはずであり、関連する Oracle シーケンスとトリガーを使用して "SERIAL" データ型を "NUMBER" に変換すると説明されています。ただし、ツールを実行しようとすると、「SERIAL」という単語が「ERROR(SERIAL)」に置き換えられるだけなので、手動でトリガー/シーケンスを追加しようとしています。

ここでの例: http://docs.oracle.com/html/B16022_01/ch2.htm#sthref112は、これを行う方法を示しています。シーケンスはかなり単純に見えますが、トリガーを次のように作成しようとすると、次のようになります。

Pro*Cプリプロセッサはここで「CREATE」キーワードを取得し、ホスト変数「:new.JOB_ID」の使用を許可しないと判断します。ホスト変数は「CREATE」文と組み合せて使用できないためです。

私の質問は、ホスト変数を使用して列名を指定せずに、Oracle シーケンスを特定の列にリンクするトリガーを作成する方法はありますか? Oracle のドキュメントには、移行ツールで対応できるはずであることが示されているようです。これは、これを行う何らかの方法が必要であることを意味します。ただし、私が見つけたトリガーの使用例はすべてホスト変数を使用しているため、プリプロセッサが文句を言います。

お時間をいただきありがとうございます。

(注: 上記の例では、Oracle ドキュメントの例のトリガー/シーケンス/列名を使用しました。)

0 投票する
1 に答える
1538 参照

c++ - Proc*C コンパイルのエラー

次のプリコンパイラ オプションを使用して、Red Hat Linux v4.1.2-44 (HP および Solaris でコンパイル可能) で .pc ファイルをコンパイルしようとしています。

PROCFLAGS =* maxopencursors *=100 PARSE =NONE userid =db2poc/db2poc@mydb VARCHAR =YES code =CPP CPP_SUFFIX =cpp duration =session sqlcheck =full include =/app1/myuser/Application/Source/Header SYS_INCLUDE =/oradata1/ora11g /app/ora11g/product/11.2.0/dbhome_1/rdbms/public,/oradata1/ora11g/app/ora11g/product/11.2.0/dbhome_1/precomp/public,/oradata1/ora11g/app/ora11g/product/11.2 .0/dbhome_1/rdbms/plsql/public,/oradata1/ora11g/app/ora11g/product/11.2.0/dbhome_1/xdk/include,/usr/include/c++/3.4.6/後方

問題は、EXEC SQL DECLARE SECTION にマクロまたは typedef データ型がある場合、PCC-S-02322 というエラーがスローされ、マクロの未定義の識別子見つかり、 typedef データ型の場合に次のエラーがスローされることです。

PCC-S-02201、次のいずれかを予期しているときに、シンボル「SHORT」が発生しました:

auto, char, const, double, enum, extern, float, int, long, *ulong_varchar, OCIBFileLocator OCIBlobLocator,* OCIClobLocator, OCIDateTime, OCIExtProcContext, OCIInterval, OCIRowid, OCIDate, OCINumber, OCIRaw, OCIString, register, *short, signed, sql_context、sql_cursor、static、struct、* typedef、union、unsigned、utext、uvarchar、varchar、void、 volatile、typedef 名、プリコンパイル済みヘッダー、exec oracle、 exec oracle begin、exec、exec sql、exec sql begin、 exec sql end, exec sql type, exec sql var, exec sql include,

シンボル「enum」が「SHORT」の代わりに使用されました。

提案してください。ありがとう

0 投票する
3 に答える
5627 参照

sql - SQL-削除とサブクエリ

以下は、配置テーブル内のすべてのレコードを削除するために作成したSQLクエリです。ここでplacement.op_number=は返されたレコードのリストです。

OP_NUMBERサブクエリは単独で正常に機能し、列(2行)のみを返します。

私が得るエラーは次のとおりです。

サブクエリから返すことができるレコードは最大で1つです

私は何が間違っているのですか?

0 投票する
1 に答える
265 参照

informix - Informix ESQL/C — フィールドを初期化する方法は?

すべての数値フィールド (smallint、decimal など) を 0 (ゼロ) に初期化し、テーブル内の他のフィールドをスペースに初期化するルーチンを ESQL/C で作成するにはどうすればよいですか?

0 投票する
1 に答える
2260 参照

jdbc - WMB: ESQL では、ODBC DSN の代わりに JDBCProvider 構成可能サービスとして定義されたデータソースに接続できますか?

ODBC DSN 経由でデータベースにアクセスする ESQL 中心 (計算ノード) の既存の WMB フローを継承しています。Java 中心のフロー (JavaCompute ノード) で使用する ODBC DSN の代わりに、データベース アクセスに構成可能なサービスを使用したいと考えています。

構成可能なサービスを介してデータベースと通信するようにコンピュート ノードを構成することは可能ですか?