問題タブ [db2-400]
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.
zend-framework - IBM の DB2 を使用し、application.ini ファイルで標準接続を作成する Zend Framework
DB2 はデータベース テーブルの基礎として XML ファイルを使用します。私は、application.ini ファイルを介してデータベースへの標準接続を作成するための適切な参照または例を見つけるのに非常に苦労しています。異なるコネクターを使用した以前のバージョンの例がいくつかありますが、pdo_ibm アダプターを使用したものは見つかりませんでした。どんな助けや指示も大歓迎です。
sql - System i V7R1 で関数を作成するときのエラー SQL0104
System i V7R1 で SQL 関数を作成しています。
iSeries ナビゲーター V7R1 の一部である「SQL スクリプトの実行」ツールを使用して実行します。別の V7R1 サーバー (iSeries Navigator V5R4 を使用) では動作しますが、現在作業しているサーバーでは動作しません。次のメッセージで失敗します。
FOR
ブロックを削除すると、機能します。
さらに、5250 エミュレーター、コマンド STRSQL でステートメントを実行すると、機能します。したがって、「Run SQL script」クライアントのバグのようです。
どんなヒントでも大歓迎です!
database - トリガー本体でトリガーの親スキーマを指定する
DB2 for IBM System iでは、以下でMYLOGTABLE
行われるすべての挿入操作で記録するために、このトリガーを作成しますMYCHECKEDTABLE
。
DBMSは、トリガー本体をMYSCHEMA.MYLOGTABLE
ハードコードされた状態で格納します。
ここで、スキーマ全体を新しいスキーマとしてコピーするとしますNEWSCHEMA
。NEWSCHEMA.MYCHECKEDTABLE
ログにレコードを挿入すると、レコードはのMYSCHEMA.MYLOGTABLE
代わりに追加されNEWSCHEMA.MYLOGTABLE
ます。つまり、トリガーとそのテーブルが存在するスキーマに追加されます。これが大きな問題の原因です!! また、多くのユーザーが私の制御なしでスキーマをコピーできるため...
では、トリガー本体で、トリガーが存在するスキーマを指定する方法はありますか?このようにして、ログレコードを正しいに書き込みますMYLOGTABLE
。のようなものPARENT SCHEMA
...または回避策はありますか?どうもありがとう!
ibm-midrange - UDF DETERMINISTIC 応答を「リセット」する方法は?
DB2 V5R4 では、DETERMINISTIC UDF の機能を変更すると、キャッシュされた応答がしばらくの間返されます...
キャッシュされた応答をリセットする方法はありますか?
前もって感謝します。
sql - 複数の Web サイトから SQL 経由で挿入するときに、iSeries データベースの列を自動インクリメントするにはどうすればよいですか?
クレイジーな質問。知っている。シナリオは次のとおりです。
私のクライアントには、同じ iSeries データベースの同じライブラリにアクセスする ColdFusion Web サイトがいくつかあります。仮に、次の SQL クエリをこれらの Web サイトのいずれからでも実行できるとしましょう。
(CFQUERYPARAMなどがないことはわかっています。簡単にするために、上記のクエリはA-Okであると仮定しましょう)
挿入の前にテーブルをクエリして最大値を取得し、次のようにインクリメントすることで Id を生成できます。
しかし、2 人のユーザーが同時にテーブルにアクセスし、両方が同じ「新しい」ID を取得することを心配しています。
何かご意見は?
ruby - Ruby、DB2/400、ibm_db が「セグメンテーション違反」を引き起こす
OK、Ruby は初めてで、AS/400 (iSeries、Power i、System i、IBM が最近呼んでいるもの) で実行されている DB2 データベースに接続する方法を理解しようとしています。ここに私の詳細があります:
- OS: Windows 7 プロ 64 ビット
- ルビー: 1.9.3p125 (2012-02-16) [i386-mingw32]
- ibm_db: 2.5.9 x86-mingw32
- CLI db2level (32 ビット): DB2 v9.7.0.441
簡単なドキュメントを探してみましたが、IBM の情報はなかなかわかりません。irb を実行して「require 'mswin32/ibm_db'」と入力できるようになったと思いますが、実行すると次のエラーが発生します。
私が間違っていることを理解するのに役立つものを見つけることができなかったので、アドバイスをいただければ幸いです。
ありがとう、パブロ
sql - 外部キーが存在しないため、主キーを AS400 テーブルに追加できません
IBMi/System-i/iSeries/AS400 に、外部キー、主キー、またはいかなる種類の制約もないテーブルがあります。SQL を使用して主キーを追加しようとしています:
ALTER TABLE MYLIB.TBLGB ADD CONSTRAINT MYLIB.R_MYLIB_PK_GB PRIMARY KEY (GBAPP, GBTSK, GBSET, GBSTP)
結果は次のとおりです。
Error: [SQL0538] The FOREIGN key in constraint R_MYLIB_PK_GB in MYLIB not same as the parent key. Cause . . . . . : The FOREIGN key in constraint R_MYLIB_PK_GB in MYLIB is not the same as the parent key of table *N in *N. The FOREIGN key must have the same number of columns as the parent key and the data type and attributes of the FOREIGN key must be identical to the data type and attributes of the corresponding column of the parent key. Recovery . . . : Correct the statement so that the description of the FOREIGN key conforms to that of the parent key of the specified table.
このテーブルにリンクされた外部キーは絶対にないので、私はこれに完全に困惑しています。実際、このライブラリのすべてのテーブルからすべての制約を削除しました。これを妨げているものを特定するには、何を確認できますか?
追加の興味深い詳細の1つは、これが他の本質的に同一のライブラリでうまく機能したことです...
sql - クエリで YYYYMMDD として保存されている 2 日間の日数の差を計算するにはどうすればよいですか?
「YYYYMMDD」の形式でデータベースに保存されている日付からの日数を計算する必要があるクエリを作成しています。これは Date データ型ではないため、ネイティブの Date 関数を使用できません。SQLクエリでそのような計算を実行するための最良の方法(パフォーマンス、読みやすさなど)は何ですか?
sql - READS SQL DATA プロシージャー内から呼び出された SQL DATA プロシージャーを変更します。
基本的にすべての情報をファイルにダンプする一般的な SQL エラー ルーチンを定義しようとしGET DIAGNOSTICS
ています。
このすべての情報を取得するプロシージャを作成しましたが、別のプロシージャ内から呼び出すとうまく機能しMODIFIES SQL
ます。データをフェッチする手順でも必要です。これらのプロシージャは で定義されてREADS SQL DATA
おり、エラー ルーチンを呼び出すと、呼び出し元の を継承するため失敗しますREAD
。
この問題を回避するにはどうすればよいですか。変更のためにデータを開く可能性があるため、すべてを変更しREADS SQL DATA
たくMODIFIES SQL DATA
ないのですが、それは望ましくありません。
fluent-nhibernate - Fluent NHibernate は iSeries データ プロバイダーを提供しますか?
Fluent NHibernate を使用して AS/400 iSeries DB2 サーバーに接続しようとしています。次のコードがあります。
nhprof を実行していますが、次のエラーが表示されます: ファイルまたはアセンブリ 'IBM.Data.DB2' またはその依存関係の 1 つをロードできませんでした。指定されたファイルが見つかりません。タイプ IBM.Data.DB2.DB2Command、IBM.Data.DB2 をロードできませんでした。
IBM.Data.DB2.dll が iSeries の不適切な .dll であることはわかっています。私のbinフォルダーにあるIBM.Data.DB2.iSeries.dllをロードしているはずです。
NHibernate には、iSeries dll をロードする方法があります。Fluent にロードするように指示するにはどうすればよいですか?