問題タブ [anydac]

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 に答える
517 参照

database - サーバー上の BLOB フィールドを更新するにはどうすればよいですか

DataAbstract と RemObjects を使用して構築されたクライアント/サーバー アプリケーションがあり、クライアントはサーバーが DB に配置するバイナリ変数を転送しています。サーバー機能はこんな感じ

しかし、サーバーからテーブルにアクセスして、そのバイナリ変数をブロブに保存する方法はわかりません。DAのドキュメントにも参照が見つかりません。

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

delphi - パラメーター化されたクエリのパラメーターに値を割り当てるときの割り当てエラー

Delphi XE2 を AnyDac コンポーネントと Advantage Database 10 と共に使用しています。私のコードでは、次のようなパラメーター化されたクエリを使用しています。

これは例外になります。

Exception der Klasse EADSNativeException mit der Meldung '[AnyDAC][Phys][ADS] エラー 7200: AQE エラー: 状態 = 22018;
NativeError = 2112; [iAnywhere ソリューション][Adv​​antage SQL Engine]Assignment error' aufgetreten.

もちろん、AStartDateTime は有効な Delphi TDateTime 値であり、AIDRessourcenGruppe は整数値です。

興味深いことに、これら 2 つのバリアントは機能します。

-

私は何かが恋しいですか?助けてくれてありがとう!

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

delphi - Indy 10 TCPコマンドハンドラーは非同期ですか?

私のアプリケーションでは、またはのいずれかで例外が発生していstack overflowますour of memory。システムに十分な時間があったかどうかに応じて、さまざまな場所に表示されます。言い換えると、アプリを2回実行しても、同じ場所で同じ例外が発生することはありません。

データベースアクセスを引き起こすタイマーがいくつかあります。AnyDac d / bコンポーネントの担当者は、グローバルを再利用することはできませんTADConnectionが、各タイマーハンドラーで動的に割り当てる必要があると言っています。

ドーがあったと思っただけです!最新のスタックトレースを見た瞬間。

そのマークされた行、AnyDacからIndyコードへの突然の切り替えがわかりません

誰か説明してもらえますか?ありがとう

私の最初の考えは、おそらくApplciation.ProcessMessagesなどを呼び出したために、IndyがAnyDacを中断しているということでしたが、スタックには表示されません...

しかし、それが可能であれば、「通常の」非タイマーハンドラーコードを中断できますか?

私はそれがクラックされていることを確信していました、そして問題は私のTCPコマンドハンドラーが他のものによって使用されるAnyDacコンポーネントを再利用していたことでした...それから私は私のコードを見て、コマンドハンドラーまたはでデータベースアクセスがないことを確認しました彼らが呼ぶものは何でも。

私は困惑しています。私が書いたことは意味がありますか?誰かアドバイスはありますか?

助けてくれてありがとう。

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

delphi - Delphi フォーム読み取りエラー

昨日私はプロジェクトに取り組んでいて、すべてうまくいきましたが、今日Delphi XEを開いたときにグループプロジェクトファイルを開いてから必要なフォームを開いたところ、次のエラーが発生しました:

ここに画像の説明を入力

無視を押すと、必要なフォームがいくつかあるため、プロジェクト全体がうまくいきません。キャンセルを押すと、次のようになります。

ここに画像の説明を入力

しかし、フォームが開き、プロジェクトをコンパイルしようとすると、次のようになります。

ここに画像の説明を入力

最も興味深いのは、コンポーネント ファイルが次の場所にないことです。

これはグループ プロジェクトがあるディレクトリです。Delphi で正しいライブラリとブラウジング パスを指定し、コンパイルされた .Bpl ファイルを

フォームを開かずにグループ プロジェクトを開くと、問題なくコンパイルできます。アイデアはありますか?

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

delphi - Anydac クエリの実行中にプログラムの応答性を維持する方法は?

sdacを使用すると、のようにプログラムをユーザー入力に応答させることができます。

anydacクエリで同じコードを実装するにはどうすればよいですか(同様の機能はありません)。

Delphi xe2 と anydac v6 を使用しています。

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

delphi - dbnavigator の削除ボタンが押された後、決定に基づいてレコードの削除を中止するにはどうすればよいですか?

dbnavigator削除ボタンを押した後、決定に基づいてレコードの削除を中止できますか? beforeActionイベントチェックしました

しかし、うまくいきません。ヘルプはありますか?

私は使用していますDelPhi XE2, anyDac Components

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

delphi - AnyDac フォーム デザイン、プログラミング クエリ キャンセル ダイアログ

TADGUIxAsyncExecuteDialog コンポーネントからの AnyDac Cancel ダイアログに問題があります。基本的に、ユーザーがクエリの実行をキャンセルできるようにする必要があります。完全に機能しますが、デザインがプログラムと一致しません。表示されるフォームを編集する必要があります。ユーザーが私のニーズに合わせて、AnyDacのアイコンを削除し、キャプションなどを変更します..どうすればこれを行うことができますか?

AnyDac 6.0.3 ビルド 2713 Delphi XE を使用しています

1 週間、インターネット全体を検索してみましたが、うまくいきません :)

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

mysql - DB グリッドに MySql TIMEDIFF() を表示する

コマンド ラインを使用すると、次のクエリで満足のいく結果が得られます (TIMEDIFF の目的であるデュレーションが表示されます)。

Delphi の DB グリッドに配置すると、TIMEDIFF は のようにフォーマットされますが12:00:07 AM、これは私が望むものではありません (期間ではなく時間のように見えます)。

AnyDacを使っていて、設計時にクエリエディタを開いて実行すると結果も12:00:07 AMになってしまうので、なぜかAnyDacが整形しているようです。

00:00:07 (時間ではなく期間) のような出力を取得するにはどうすればよいですか?

  • AnyDac クエリを微調整できますか?
  • MySql ステートメントを使用して出力を明示的にフォーマットできますか?
  • 再フォーマットするためにコーディングできる OnXXX() 関数はありますか (およびその方法)?

[更新] さて、この醜いコードは私が望むことを行いますが、もっとエレガントな方法はありますか?

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

delphi - [AnyDac][DApt]-400 しかし、私のテーブルには PK があります

[anydac][DApt]-400.Fetch コマンドは [1] レコードではなく [0] をフェッチしました。考えられる理由: 更新テーブルに PK または行識別子がありません。レコードが別のユーザーによって変更/削除されました。

実行時

の上

ご覧のとおり、テーブルには PK があります。また、プログラムはシングルスレッドであり、1 つのコピーのみが実行されているため、他の誰も更新していません。

SingleTestRunADQuery.MasterFields=run_id and IndexFieldNames=run_idすべてのテスト実行の概要を保持するテーブルの PK として設定しました。2 番目のテーブルには、テスト中に取得された測定値が保持され、run_id1 回のテスト実行のすべての測定値が示されます (このエラーを取り除くために、tiemstamp に PK を追加しただけですが、機能せず、削除できると思います)。

マスター データ ソースは次のとおりです。

何が問題なのですか?


[更新] @mj2008 は、一部のフィールドの名前が異なることを指摘しています。これは歴史的な理由によるものです (私はまだ何かを試していますが、まだ変更したくありません)、これらはクエリによって適応されます: