問題タブ [dbexpress]

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 投票する
3 に答える
17574 参照

mysql - libmysql.dllを読み込めません

初めてdbexpressコンポーネントを使用してmysqlに接続しようとしています

このエラーが発生しました

接続に失敗しました:libmysql.dllをロードできません

私のデルファイバージョン:Delphi7

mysql 5.1.36(私のウィンドウにインストールされたwampサーバー)。

誰かがこれで私を助けることができます

前もって感謝します

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

delphi - Firebird で DBX にブール値を認識させる

Firebird FAQ では、BOOLEAN ドメインの作成方法が説明されています。おそらく最も興味深い部分は、最後に次のように書かれています。

.Net で OleDB のような接続ライブラリを使用する場合、OleDB プロバイダーの GetSchema メソッドをオーバーライドできるため、クエリから取得する DataTable にはネイティブの .Net ブール値が含まれます。

DB Express でそれを行う方法はありますか? http://sites.google.com/site/dbxfirebird/の DBX ドライバーを使用していますが、TSmallintField の代わりにデータセットで TBooleanField インスタンスを取得できると便利です。

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

delphi - DBExpressでマルチトランザクションを行うにはどうすればよいですか

ブラックフィッシュで DBExpress を使用しています。

マルチトランザクションを行うにはどうすればよいですか?

複数の GRID を一度に編集していて、すべてを一度に保存する必要があります。編集の開始と投稿は、エンド ユーザーが作業中に、またアプリケーションの別の場所で決定する必要があるため、1 回のトランザクションで行うのは非常に困難です。

アップデート:

問題は、アプリケーションが並行して動作し、他のユーザーがアクセスできるように新しいデータをできるだけ早くコミットする必要があることです。

したがって、グリッド情報は、投稿の直後、または投稿とともにコミットされます。

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

sql - ApplyUpdates 中に結合からのフィールドを更新してはならないことを DBX に知らせるにはどうすればよいですか?

部屋間のリンクを含むグリッド上に部屋のマップ (グラフ) を作成するコードがあります。あるテーブルに部屋があり、別のテーブルにリンクがある Firebird データベースに保存されます。データは、DB Express TSimpleDataset データセットを通じて管理されます。

出口 (リンク) テーブルのクエリは次のようになります。

問題は、新しい出口を追加して ApplyUpdates を呼び出すと、DBX の SQL パーサーが、ROOMS テーブルのフィールドが元のテーブルの一部ではなく便宜上存在することを理解していないように見えることです。以下を生成します。

加えて、予測可能な結果を​​伴う適切なパラメータ。XとYが挿入または更新されるべきではないことを理解させる方法を知っている人はいますか?

0 投票する
4 に答える
2653 参照

delphi - Microsoft Access 用の dbExpress ドライバー

dbExpress 初心者なので、Microsoft Access 用の dbExpress ドライバはあるのでしょうか?

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

delphi - すべてのTClientDataSetレコードを挿入済みとしてマークするにはどうすればよいですか?

データベース内の複数のTClientDataSetからのデータを保存する複雑なトランザクションがあります。

これらのClientDataSetの1つは、常にデータを下にあるテーブルに追加します。既存のレコードがどこから来たかに関係なく、INSERTステートメントを生成します。

私は今、挿入を強制しています:

すべてのレコードを挿入済みとしてマークする簡単な方法はありますか?

0 投票する
8 に答える
4362 参照

database - データベース接続 Delphi

私は何年も Delphi を使用していますが、データベースには使用していませんが、最近調査とテストを開始しました。

ほとんどのことは自動的に行われることに感銘を受けました。私は、php と python で手作業で書くことに慣れていました。

友人のために商用システムを開発する予定です (2 層) 5 ユーザー コンピューター、1 データベース サーバー。

データベース サーバーは、(raid-1) 2 台のハード ドライブを実行する適切なマシンです (MySql5.1 または Postgre または Firebird、提案を受け付けています)。

あど

  • 使いやすい
  • 簡単な導入 (mysqlconnector インストーラーのみ)
  • 遅い?

DbExpress

  • 4 つのファイル [dbxconnections.ini、dbxdrivers.ini、mysqldll、driverdll] を出荷する必要があります。
  • より複雑な (より使いにくい)
  • ClientDataSet は複雑さを追加しますが、本当に便利に見えます
  • 無料の Postgre ドライバーがありませんか?

ゼオス

  • 簡単な導入 (1 dll)
  • 使いやすい

ご覧のとおり、必要な機能は次のとおりです。

  • 速い
  • 使いやすい
  • 展開が簡単

実際のシナリオ (クライアント、サーバー) ですべてをテストすることはできません。

編集:みんなありがとう、私はADO(おそらく)またはZeosに行くと思う

前もってありがとう
アーサー

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

delphi - DBMonitor のインストール方法

これはおそらく非常に単純な質問ですが、ここにあります。Firebird 用の DevArt DBExpress ドライバーのライセンスを更新しました。ヘルプ ファイルには、フリーウェアの DBMonitor アプリケーションを使用できると書かれていますが、D2006 を使用しているため、次の手順を使用する必要があります。

「Delphi Pro バージョンのユーザーの場合、TSQLMonitor コンポーネントはパレットにインストールされていませんが、SQLExpr.pas ユニットに含まれているため、コンポーネント パレットに手動でインストールする必要があります。」

コードで TSQLMonitor のインスタンスを作成し、それを構成して使用することはできますが、それを自分のパレットに配置したい場合は、どうすればよいでしょうか? 独自のユニットに入れて dcluser パッケージに追加できると思いますが、それは私がすべきことですか?

ご協力いただきありがとうございます。

0 投票する
8 に答える
3518 参照

delphi - Delphi dbExpress と Interbase: UTF8 への移行手順とリスクは?

現在、データベースは Win1252 を唯一の文字エンコーディングとして使用しています。まもなく、データベース テーブルで Unicode をサポートする必要があります。つまり、4 つのデータベースと、24 時間年中無休の環境で社内で実行される約 80 の Delphi アプリケーションに対して、この移行を実行する必要があります。Delphi アプリケーションのデータベースを UTF-8 (または UNICODE_FSS) に移行するための推奨事項はありますか? 以下にいくつかの質問を示します。ご回答ありがとうございます。

  • データをダンプし、UNICODE_FSS または UTF-8 でデータベースを再作成し、データをロードすることによって、既存のデータベース (250 MB から 2 GB の間のサイズ、Blob フィールドなし) の移行を支援するツールはありますか?
  • Unicode 文字セットに関連する Delphi 2009、dbExpress、および Interbase 7.5 に関する既知の問題はありますか?
  • 最初にデータベースをInterbase 2009にアップグレードすることをお勧めしますか? (このアップグレードは計画されていますが、優先度は高くありません)
  • データベースを移行するだけで、Delphi は Unicode 文字セットを自動的に処理しますか、それともすべてのデータ モジュール (dfm とソース コード)のすべての文字フィールド タイプも変更する必要がありますか?
  • 既存のアプリケーションの通常の開発および保守と並行して移行に取り組む場合、どの戦略をお勧めしますか? アプリケーションは社内で実行されるため、開発とデータベース管理は社内で行われます。

更新: InterBase ディスカッション フォーラム スレッドから: InterBaseの Unicode データベース - 本当に? (これは私によるスレッドではありませんが、InterBase XE にまだいくつかの問題が存在することを示しています)。

私が提出したいくつかのレポートは次のとおりです。 QC#92867 - ビューにユニオンが含まれている場合、および ClientDataSet を使用している場合にのみ、ビューからの文字列フィールドが空白になります。これは、いくつかのレポートで欠落しているデータとして見つかり、機能しなくなりました。

QC#91494 - IB 文字列データ 文字フィールド (例: Char(1)) は、ストアド プロシージャを介して取得されると空白で埋められます。テストは失敗します - 例: If Active = "Y". フォームでストアド プロシージャを多用していますが、これらは機能しません。

QC#91355 - IBSqlMonitor が失敗する。IBSqlMonitor の出力は多少文字化けしているため、このツールは役に立ちません。(だから、私のシャベルも壊れている!)

未報告 - TClientDataSet の永続フィールドが TWideString で失敗します。

その他の関連する QC エントリ:

QC#94455 SQL Unicode Char タイプの失敗 (InterBase XE)

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

.net - Visual Studio でデバッグを実行する場合と実行しない場合で、.NET プログラムの動作はどのように異なりますか?

.NET アプリケーションを終了すると、DBEXPSDA40.DLL (Dev Art MS SQL Server dbexpress ドライバー) でアクセス違反が発生します。私のアプリケーション (VB.NET) は、dbexpress を使用して SQL Server に接続する Delphi で記述された COM サーバーを呼び出します。

同じことを行っても、ホスト アプリケーションがネイティブの Delphi アプリケーションまたは Excel VBA である場合、A/V が表示されません。また、VS IDE でデバッグを使用して VB.NET アプリケーションを実行しても表示されません。

A/V を dbexpress ユニットのファイナライズ句まで追跡しました。これにより、ドライバーが閉じられます (この場合、SQL サーバー用と SQL Server Compact 用の 2 つ)。

.NET 環境でデバッグを行う場合と行わない場合の違いがわかれば、どこを調べればよいかわかるでしょう。