問題タブ [firedac]

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

mysql - 「!」と組み合わせた FireDAC の sha() 関数の誤り キャラクター

Delphi XE4 を使用していますが、FireDAC コンポーネント (V8.0.5.3365) と MySQL ハッシュ関数sha()に問題があります。たとえば、MySQL サーバーの通常のデータベース ツールでsha('testtest1!')を使用すると、結果は次のようになります。

d68c15248886d3eb551990298ab1f99db788365a

FireDAC TADQuery 関数から同じハッシュ関数を使用すると、結果は次のようになります。

d41ff23e0e6147a8fd2722f68e53f993a92784b0

この異なる出力は、ハッシュされた文字列に「!」が含まれている場合にのみ発生します。それ以外の場合、ハッシュされた文字列は同じです。私が間違っていることはありますか??

0 投票する
5 に答える
9499 参照

mysql - パラメータの操作 Delphi XE7 Firedac

ここでの支援は素晴らしいでしょう。

パラメータを使用して「ORDER BY」を動的に変更しようとしています

以下は私が試したコードですが、ドキュメントに従っているにもかかわらず、「[FIREDAC] [PHYS] [MYSQL] SQL構文にエラーがあります...行4の「ORDER BY some_field」の近く」というエラーが表示されます」

ParamCreate を True に設定しました

私のデータベースはMySQLです

0 投票する
0 に答える
1101 参照

mysql - Delphi XE 6 を使用してテーブルに複数のレコードを追加する方法は?

Delphi XE 6、FireDAC、および MySQL 5.6 を使用しています

私の FORM には、顧客レコードの多くの TDBEDIT フィールドを格納する TABSHEET があります。

CUSTOMER テーブルは TFDTABLE です。これらの TDBEDIT フィールドは、その CUSTOMER テーブルに関連するデータ ソースを使用します。

新しい顧客レコードを追加するためのロジックは次のとおりです。

  1. CUSTOMER テーブル APPEND を呼び出します
  2. これらの TDBEDIT フィールドは空白になります。ユーザーが入力できます。
  3. ユーザーは CANCEL ボタンをクリックして、この追加をキャンセルできます
  4. ユーザーは [OK] ボタンをクリックして、新しいレコードの追加を確認できます。次に、CUSTOMER テーブル POST を呼び出します

ユーザーが最大5つの顧客レコードを入力できるように、5つのタブシートが必要です。次に、[OK] ボタンをクリックすると、これら 5 つのレコードが CUSTOMER テーブルに追加されます。

どうすればそれを達成できますか?

既存のロジックを使用すると、同じリモート物理 MySQL 顧客テーブルに 5 つの TFDTABLE を使用する必要があります。

これは、特に顧客テーブルが大きい場合、効率的ではないようです。

次に、TFDTABLE ごとに 5 つのデータ ソースを使用して、フィールドの 5 つの TDBEDIT セットのそれぞれが 1 つのデータ ソースを使用できるようにする必要があります。

次に、5 TFDTABLE APPEND メソッドを呼び出して、各タブシートに 5 セットの空白の TDBEDIT フィールドを作成します...など...など...

この方法は少しばかげているようですが、他に方法はありますか?

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

mysql - FireDAC、「secure-auth=OFF」をクライアント ライブラリに渡す

DelphiXE6 で FireDAC を使用して、MySQL 5.6 クライアント ライブラリがインストールされているクライアント マシンから、安全なパスワードをサポートしていない古い mysql サーバー (4.1 より前) に接続しようとして失敗しました。このような接続は、デフォルトでは、(サーバーではなく) クライアントによって拒否され、次のエラーが表示されます。

--skip-secure-auth現在、コマンド ライン クライアントでは、これを機能させるのはパラメーターを追加するのと同じくらい簡単です。以下はうまくいきます:

しかし、FireDAC では、そのパラメータをクライアント ライブラリに渡す方法を見つけることができませんでした。TFDConnection パラメータに" secure-auth=off" を追加しても機能しません。そのパラメータは単に無視されます。

次のようにクライアントで my.ini を設定して secure-auth を無効にしようとしましたが、それも効果がありませんでした。

この時点で、私は立ち往生しているようです。プロトコル オプションの MYSQL_SECURE_AUTH および secure_auth フィールドは FireDAC.Phys.MySQLCli で定義されていますが、TFDConnection から MySQLcli を保持するクラスに移動できないようです。

私の問題を十分に明確に説明できたことを願っています。どんな助けでも大歓迎です。

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

sqlite - SQLite FireDAC 末尾のスペース

Delphi XE7 と FireDAC を使用して SQLite にアクセスしています。

TEXT フィールドにデータを入力すると、末尾のスペースまたは #0 文字が切り捨てられます。

末尾の空白を保持するために SQLite または FireDAC で変更できるものはありますか?

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

sql-server - Delphi EMS FireDAC: データセットを開けません [FDMemTable]

DelphiでEMS(つまり、将来のiOSアプリケーション用)を使用して単純なクライアントサーバーアプリケーションを使用しています。

この質問は、以前の質問の続きで、別のエラーがあります。

これは、マルコの提案に従った別の問題に関する私の以前の質問です。

問題:クライアントからサーバーにパラメーターを渡すときにエラーが発生しました。

これにより、エラーをスローする Param を含む TFDMemTable プロパティ (DatSTableName: QRowParam )Image1があります。

問題 TFDMemTable

これにより、機能する Param のないTFDMemTableプロパティ (DatSTableName: QRows ) の Image2 があります。

作業中の TFDMemTable

質問: クライアントからサーバーへの一般的な呼び出しを使用している場合、それは機能し、すべてのデータを取得しました。パラメータTFDQueryなしでImage2 TFDMemTableを使用しました。しかし、クライアントからサーバーにパラメーターを渡すと、パラメーター TFDQuery で Image1 TFDMemTable を使用したクライアント側でエラーが発生しまし

誰でも私に提案できますか?この問題からさらに先に進むにはどうすればよいですか?

前もって感謝します。