問題タブ [zeos]
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.
delphi - zeos / sqlite を含む Unicode ファイル名
ユーザーが選択したファイル名で sqlite データベースにデータを保存する必要があります。これには、Unicode ファイル名が含まれます。Delphi の Zeos コンポーネントでこれを指定する方法はありますか?
delphi - BDS2006 と Zeos のインストール
最近、BDS2006 に Zeos 6.6 安定版を Delphi と C++ の両方のパーソナリティ用にインストールしました。
そうするために、Zeos は Delphi で書かれているので、パッケージをビルドするときに「すべての C++ Builder ファイルを生成する」にチェックを入れました。
私が見つけた問題は、どういうわけか、さまざまなパッケージのビルド中に必要なすべての .DCUが生成されなかったことです。私は最終的に、最初に Delphi のみをビルドし (問題なく動作しました)、次に Delphi と C++ の両方を再構築することで、この問題を回避しました。
これがバグなのか ( Quality Centralや Googleで同様のものは見つかりませんでした)、それとも BDS2006 や他の IDE だけに影響するのかはわかりません。ですから、質問は次のとおりです。 「すべての C++ Builder ファイルを生成する」がチェックされているときにコンパイラがすべての .DCU をビルドしない原因を誰か教えてください。
よろしくお願いいたします。
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に行くと思う
前もってありがとう
アーサー
database - Delphi: Firebird データベースをプログラムで作成する方法
D2K9、Zeos 7Alpha、および Firebird 2.1 を使用しています
autoinc フィールドを追加する前に、これを機能させました。100%正しくやっていたかどうかはわかりませんが。トリガー、ジェネレーターなどを使用して、SQLコードを実行する順序がわかりません。いくつかの組み合わせを試しましたが、これが機能しない以外に何か間違ったことをしていると思います。
現在のデモ: http://uploading.com/files/bd64d8m9/createdb.zip/
現在のエラー:
GENERATOR GEN_EMAIL_ACCOUNTS_ID を 1 に設定します。
IBExpert からの SQL ファイル:
トリガー:
ジェネレーター:
私のコード: 以下のコメントのデモ。
delphi - FirebirdはZeosLibとDelphiを使用して個別のデータを挿入します
Zeos7とDelphi2009を使用していて、データベースにデータを投稿する前に、特定のフィールドの下の値がデータベースにすでに存在するかどうかを確認したいと思います。
例:チーズ、マウス、トラップのフィールドキーワード値
次の何が問題になっていますか?そして、もっと良い方法はありますか?
IBExpertで一意性制約を使用しようとしましたが、次のエラーが発生します。
無効な挿入または更新値:オブジェクト列が制約されています-2つのテーブル行が重複する列値を持つことはできません。重複する値(アクティブなトランザクションに表示される)を一意のインデックス「UNQ1_KEYWORDLIST」に格納しようとします。
oracle - OCIとLobロケータを使用してLONG RAWデータを書き込む方法は?
長い生データのバグの説明を書く際のzeoslib のバグを修正したい:
問題は、最初の 2000 バイトだけがテーブルにロードされることです
OCI zeos コードでは、次のようにします。
ロブロケータを使用して長い生データを書き込むことは可能ですか? どうやって?
PS。テーブルに LONG RAW の代わりに BLOB フィールドがある場合、このコードは正常に機能します。
mysql - delphiクエリで@variables:=を使用しても機能しません
次の問題があります。
このコードを実行するとIncorrect token followed by ":"
、ZQuery1で例外が発生します。
これを修正するにはどうすればよいですか?この選択をMySQLプロシージャに入れることができないため、Delphiを使用する必要があります。
Zeos 6は、結果セットを返すMySQLプロシージャをサポートしていません。
PS
私はDelphi2007とMySQL5.1をZEOS6.6.6で使用しています。
バージョンは関係ないと思いますが。
プロジェクトに深く関わっているので、バージョンを切り替えるつもりはありません。
mysql - ... をファイルに保存せずに outfile に選択できますが、代わりに blob に保存できます
したいですselect * from x into outfile 'c:/test.csv'
。
しかし、出力ファイル test.csv に保存する代わりに、blob フィールドに保存したいと考えています。
Windows上のクライアントからクエリを開始しています。
MySQL サーバーは、Windows または Linux のサーバー上にあります (両方の場合があります)。
しかし、サーバー上のどこかではなく、クライアント側にファイルを置きたいです。
ところで
、クライアント ソフトウェアは Delphi 2007 で作成され、ZEOS を使用してリモート サーバー上の MySQL データベースに接続します。
サーバー側ではなく、クライアント側の出力ファイルを取得するにはどうすればよいですか?
delphi - RichEditフォーマットを文字列として保持しますか?
宣言したカスタムタイプに文字列を割り当てています。これは、TTreeViewsNode.Dataプロパティを使用して読み取り/書き込みします。ノードとの間で読み取りと書き込みを行います。次のようになります。
読む:RichEdit1.Lines.Text := TMyData(TreeView1.Selected.Data).MyString;
書く:TMyData(TreeView1.Selected.Data).MyString := RichEdit1.Lines.Text;
これはプレーンな文字列に最適です。フォーマットを失うことなく、リッチフォーマットされたテキストを文字列に格納できるようにしたいです。フリーウェアZeosLib(SQL)を使用してデータベースを保存しているため、RichEditでStreamsを使用してこれを行うことができました。これは、不明なトークンエラー(RTFタグからの可能性が高い)が発生するためです。エラーなしで保存するにはどうすればよいですか?
アップデート
Sylverdragによって提案されたBase64エンコーディング/デコーディングを使用して、エラーなしで正しく保存することができました。これは私の文字列をエンコードして悪い文字を削除します。
delphi - OSがまだ使用中であると考えている場合、SQLite DLLを使い終わったときに削除するにはどうすればよいですか?
使用中のファイルを削除できるように、ロックを解除または削除するにはどうすればよいですか? 問題のファイルは、私自身のアプリケーションで使用されています。
具体的には、私のアプリケーションはフリーウェアの Zeos Lib を使用しています。データベースを開いて保存するとき、sqlite3.dll ファイルはアプリケーションと同じディレクトリになければ正しく動作しません。
アプリケーションを 100% スタンドアロンにしたいので、sqlite3.dll を RC_DATA としてプロジェクトに追加し、それを使用する必要があるときはいつでも (つまり、データベースを開くか保存するか)、アプリケーションと同じフォルダーに展開します。 . 開く操作または保存操作が完了したら、sqlite3.dll ファイルを削除したいと思います。そのファイルが存在することを誰も知らず、ライブラリの欠落などを心配する必要もありません。ライブラリをアプリケーション内に格納するというアイデアには、これを行う理由があります。アプリケーション (SQL) の機能の背後にあるものをエンドユーザーに知られたくないので、心配する必要もありません。ダイナミック リンク ライブラリがありません。)
問題は、sqlite3.dll を正常に抽出して操作に使用できることですが、(アプリケーションを閉じるまで) ファイルがアプリケーションによってロックされ、次のいずれかになります。
アプリケーションを閉じずに、sqlite3.dll ファイルを強制的にロック解除する
sqlite3.dll ファイルを強制的に削除します
もちろん、別の提案がない限り?
これを抽出して使用するサンプルを次に示します。私の部分から LoadLibrary などの直接呼び出しを行う必要はありません。sqlite3.dll がアプリケーションと同じディレクトリにある限り、Zeos Lib ユニットがこれを処理する必要があります。
編集
私がやろうとしていることはあまり実用的ではないと思います.STATUS_ACCESS_DENIEDが以前にコメントしたように、これは良い考えではありません. 私は、自分がやろうとしていることを進めないことが最善であると判断しました。