問題タブ [mydac]

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

delphi - TMyQueryデータセットをDelphiのTClientDataSetにカバーする

Delphi(2006)からMySqlにアクセスするためにdevart(corelab)によるMydacコンポーネントを利用します。TClientDataSetのデータを操作する必要があることがよくあります。TMyQueryのデータセットをTClientDataSetに変換する最良の方法は何ですか。現在使用しています。

これを行うためのより良い方法はありますか?

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

mysql - Delphi 2009、MyDACおよびリレーショナルデータベース

MyDACを使用したDelphi2009でのリレーショナルデータベースの概念の使用に関して、かなりの問題があります。

私はどういうわけか次のようなデータベース構造を持っています:


アイテム

  • id
  • 名前

ストレージ

  • id
  • 名前

StorageItem

  • id
  • item_id
  • storage_id
  • 場所

「アイテム」のアクティブなデータセットがある場合、関連するすべてのストレージをたとえばDBGridに表示するにはどうすればよいですか?

ちなみに、すべてのテーブルで「id」を使用するのではなく、「id_item」や「id_storage」などを変更して使用する方がよいでしょうか。

前もって感謝します :)

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

delphi - Delphiでクエリを実行するためのマルチスレッドの使用

最近、MYSQLデータベースにクエリを作成するためのスレッドを適用しています。DBへの接続にはMyDACを使用しています。これは、TMyConnectionでは接続ごとにクエリを同時に作成できないため、実行するスレッドごとに新しい接続と新しいクエリオブジェクトを作成します。クエリを実行するため、特定の時間に、サーバーがクライアントごとに複数の接続を持つ可能性があります。データベースに接続している複数のクライアントについてこのシナリオを検討すると、これは問題になると思います。クエリでスレッドを使用するためのより良い解決策はありますか?

前もって感謝します

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

mysql - 直接データ アクセス コンポーネントの経験

クライアント ライブラリや ODBC ではなく、mysql サーバーへの直接接続を可能にする devart の MyDAC などの直接データ アクセス コンポーネントを使用した経験について知りたいです。

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

mysql - ドキュメント、MyDAC の TMyTable.Open に関するポインタ

私は Devart のmydac Data Access Components について学んでおり、オンライン検索やドキュメントで解決できなかった質問はほとんどありません。コード例では、の呼び出しが表示されますが、クラスまたはその継承パスTMyTable.Openでの説明が見つかりませんでした。誰かがこのメソッドのドキュメントと、クラスTMyTableとの関係があるかどうかを教えてください。TDBGrid

前もって感謝します

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

mysql - MyDAC のストアド関数の戻り値

Devartの MyDacと MySQL Server 5.0.41 を使用しています。を使用したスト​​アド プロシージャの実行に関するドキュメントのセクションを次に示しますTMyConnection.ExecProc

注: ストアド プロシージャとは異なり、ストアド関数は、RESULT パラメータを通じて内部的に取得された結果値を返します。関数の結果を記述するために、Params 配列に匿名の値を指定する必要がなくなりました。格納された関数の結果は、Params[0] インデックス プロパティから、または ParamByName('RESULT') メソッド呼び出しで取得されます。

また、ストアド関数を実行する方法の例も示しています。

aStringVariable1 := TMyConnection.ExecProc('StoredFunctionName',['Param1','Param2']); aStringVariable2 := TMyConnection.ParamByName('Result').AsString;

これらの例に従うと、保存された関数を実行Param1すると変数 が返されますaStringVariable2。クエリ ブラウザで関数を実行すると、正しい結果が返されます。TMyConnectionまたはを使用して MyDAC に保存された関数を実行する正しい方法に関するポインタは、TMyStoredProc高く評価されます。

前もって感謝します。

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

mysql - MyDACを使用してprocを実行します

c ++builder2010でdacコンポーネントを使用してMySQLサーバーで簡単な手順を実行するのに問題があります。

ここでdelphiに例を見つけましたhttp://stackoverflow.com/questions/3704173/return-value-of-stored-functions-in-mydacが、c++builderで例を見るのが好きです

どうか、私はあなたの助けが必要です!c++ビルダーリンクでストアドプロシージャを実行する簡単な例も必要です。

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

mysql - MyDAC のカスタム POST メソッドを定義する

objects(primary key object_ID) flags(primary key flag_ID) とobject_flags(cross-tabel between objectsand flagswith some extra info)の3 つのテーブルがあります。

すべてのフラグを返すクエリがあり、特定のオブジェクトに特定のフラグがある場合は 1 または 0 を返します。

アプリケーション(Delphi で作成)では、すべての行がコンポーネントにロードされます。ユーザーは、テーブルのチェック ボックスをクリックしてデータを変更することにより、フラグを割り当てることができます。

1 行が編集されたとします。object_has_flag の値に応じて、次のことを行う必要があります。

  • object_has_flag が true であり、まだ true である場合は、objects_flags の関連する行で UPDATE を実行する必要があります。
  • object_has_flag が false でしたが、現在は true であり、INSERT を実行する必要がある場合
  • object_has_flag が true でしたが、現在は false の場合、行を削除する必要があります

これは、1 つのクエリhttps://stackoverflow.com/questions/7927114/conditional-replace-or-delete-in-one-queryでは実行できないようです。

MyDAC の TMyQuery をデータセットとして使用しています。行への変更を保存するために必要なクエリを実行する別のコードを作成しましたが、これをデータセットに結合するにはどうすればよいですか? どのイベント ハンドラーを使用する必要がありますか? また、投稿ではなく更新するように TMyQuery に指示するにはどうすればよいですか?

編集:明らかに、問題が何であるかは完全には明らかではありません。標準の UpdateSQL、DeleteSQL、および InsertSQL は使用できません。これは、行を編集した後 (行を削除したり、行を挿入したりせずに)、INSERTまたはDELETEを実行する必要がある場合があるためです。

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

mysql - コードだけを使用してmySqlデータベースに接続できません

ここで検索しましたが、答えが見つかりませんでした。

Delphi2010を使用しています。DevartMydacを使用してmySqlデータベースに接続しています。サーバー、データベース、名前、パスをコンポーネントに設定すると、問題なく接続されます。

しかし、コードだけで接続しようとすると、エラーが発生します。

メッセージ付きの例外クラスEMySalExcption"#28000ユーザー'username@00.00.00.00'のアクセスが拒否されました(passworkdを使用:YES)'。

コードメソッドがエラーを引き起こすのはなぜですか?

あなたの助けと忍耐に感謝します。

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

mysql - MyQuery(Delphi)でMySQLテーブルにデータを挿入する方法

ユーザー登録アプリケーションを確立してmysql接続を行っています。Delphi 7を使用しています。Myquery(MySQLアクセスセット)でユーザー情報の追加に問題があります。

エラーメッセージ: MyQuery1:SQLステートメントが提供されていません。

注: uyeler:メンバーテーブル。