問題タブ [firebird]
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.
database - 複数行のすべてのフィールド値を連結する Firebird ストアド プロシージャ
私の目標は、複数の行からすべてのフィールド値を 1 つの出力変数 (おそらく varchar(some_length)) に収集できるストアド プロシージャを作成することです。奇妙な解決策に思えるかもしれませんが、その状況で使用できる唯一の解決策であると確信しています。以前に Firebird を使用したことがなく、ストアド プロシージャは他のよく知られている db システムとは大きく異なります。私の Firebird は 1.5 で、方言は 3 です (意味がわからない)。だから多分誰かがアルゴリズムの例で私を助けることができます.
sql-server - DBエンジンはSQLレベルでどの程度の互換性がありますか?
バックエンドでDBを簡単に切り替えることができるアプリケーションが必要だったとしましょう。
私は主にSQLServerをプライマリバックエンドとして考えていますが、別のDBエンジンに柔軟に対応できます。FirebirdとPostGreSQLは、(私の簡単なウィキペディアの遠足から)SQL Serverと最も共通しているようです(さらに、それらは無料です)。
DBのセットアップ、アクセス、クエリなどは、Firebird、PostGreSQL、およびMS SQL Serverでどの程度似ていますか?
.net - WinForms アプリケーションでの Firebird.NET の使用に関する記事
WinForms アプリケーションで Firebird.NET を使用することに関する優れた記事へのリンクを教えてくれる人はいますか? 単純な Google 検索では良い結果が得られませんでした。いくつかのことをすばやく行うのに役立つステップバイステップのガイドを探していますが、ドキュメントが適切な出発点であるかどうかわかりません。
前もって感謝します。アニンダ
delphi - Delphi 2009 と Firebird 2.1 = 完全な Unicode ?
Unicode アプリを作成したり、既存のアプリを Unicode に変換したりした人はいますか?
Firebird をどのように微調整して、特に CHARSET 属性の問題を最小限に抑えていますか?
何か問題はありますか?他に知っておくべきことはありますか?
ユニコード列車に飛び乗る前に、驚きを少なくするために準備をしています。
sql - SQL(Firebird/MySql)でレコードを更新/挿入する正しい/最速の方法は何ですか
データベース内のレコードが存在する場合は更新し、存在しない場合は挿入する SQL が必要です。これにはいくつかの解決策があるように見えますが、これを行うための正しい/受け入れられた方法が何であるかわかりません。
更新は両方のデータベースに対して実行する必要があるため、理想的には Firebird 2 と MySQL 5 の両方で動作することを望みます。プラスになるより多くのデータベースで動作する場合、同じ SQL が両方で実行された場合はより簡単になります。 .
速度と信頼性も考慮されます。この場合、速度よりも信頼性が優先されますが、数千のレコードを (異なるテーブルで) すばやく連続して更新するために使用される可能性があります。
任意の服従?
sql - CASCADE と RESTRICT の外部キー要件が競合していますか?
プロジェクト内のファイルと依存関係を追跡するデータベースに取り組んでいます。簡単に言えば、2 つのメイン テーブルがあります。PROJECTS テーブルにはプロジェクト名とその他のプロパティがリストされ、FILES テーブルにはファイルがリストされます。すべてのファイル エントリは、CASCADE に設定された外部キーとしてプロジェクトを指しているため、データベースからプロジェクト レコードを削除すると、すべてのファイル レコードも消えてしまいます。ここまでは順調ですね。
これで、追加の DEPENDENCIES テーブルができました。依存関係テーブルの各レコードは 2 つのファイルであり、最初のファイルが 2 番目のファイルに依存することを指定します。繰り返しますが、これらは外部キーです。最初のキーは CASCADE に設定されています (つまり、ファイル エントリを削除すると、このレコードは削除されます)。2 番目のキーは RESTRICT に設定されています (したがって、他のファイルが依存している場合、ファイル エントリを削除することはできません)。その上で)。繰り返しますが、すべてが良さそうです。
残念ながら、単一の SQL delete ステートメントでプロジェクトを削除することはできなくなったようです! 削除はファイルのカスケード削除を試みますが、これらのいずれかが DEPENDENCIES テーブルに表示される場合、RESTRICT 外部キーによって削除が妨げられます (他の列が CASCADE であるため、依存関係テーブルのそのレコードは削除されますが)。私が持っている唯一の回避策は、ファイルを削除する正確な順序を計算して、依存関係レコードの制約に違反しないようにし、プロジェクトを削除する前に一度に 1 つずつファイル レコードを削除することです。
プロジェクト テーブルからの単一の SQL 削除が他の削除を正しくカスケードするように、データベース スキーマを設定する方法はありますか? 私は Firebird 2.1 を使用していますが、それが違いを生むかどうかはわかりません。これを機能させる方法があるはずです。
sql - Firebird で UNION ALL と ORDER BY を組み合わせる
誰かがこれに出くわす可能性があり、役立つかもしれないので、これは私自身の質問に答える最初の試みです. Firebird を使用して、UNION ALL を使用して 2 つのクエリの結果を結合し、結果の出力を特定の列で並べ替えたいと考えています。何かのようなもの:
かっこは、他のデータベースの有効な構文に由来するものであり、UNION ALL (テーブルで機能するように定義された操作 - つまり、順序付けされていない一連のレコード) への引数が個別に順序付けされないようにするために必要です。しかし、この構文を Firebird で動作させることができませんでした。
visual-studio - Visual Studio と Firebird で NHibernate をセットアップするにはどうすればよいですか?
Visual Studio で NHibernate を試すための小さなアプリをセットアップしようとしていますが、うまくいきません。
私が得るエラーは次のとおりです。「構成で方言が見つかりませんでした」。
app.config と hibernate.cfg.xml の両方で設定を指定しようとしましたが、どちらも機能していないようです。これらのファイルは、アプリのソースと同じディレクトリにあります (他のディレクトリも試しました)。hibernate.cfg.xml のビルド アクションを「埋め込みリソース」として設定しようとしましたが、それも役に立ちませんでした。これらの構成ファイルを完全に削除しても、同じエラー メッセージが表示されます。
私はネット上でさまざまな例を見てきましたが、それを分類することはできません.何が問題なのか知っている人はいますか?
ここに私のアプリケーションソース、app.config および hibernate.cfg.xml があります
アプリケーション ソース
App.Config
hibernate.cfg.xml
sql - Delphi DBExpress/Firebird のパラメータ化されたクエリでの文字列切り捨てエラー
DBExpress TSQLQuery を使用して、Delphi で次のようなクエリを実行しています。
それを実行すると、 open コマンドを実行すると、次の例外が発生します
クラス TDBXError でメッセージ「算術例外、数値オーバーフロー、または文字列の切り捨て」が発生しました。
これは、AMYFIELD の文字列がテーブル フィールドの長さよりも長いことが原因です。MYFIELD は Varchar(10) です。短い文字列にトリミングすると問題なく動作し、その文字列を直接 SQL に追加すると、
つまり、切り捨てについて不平を言うことはありません。これが挿入/更新である場合、切り捨てについて知りたいのですが、検索に使用されたばかりなので、停止したいと思います。
文字列を切り捨ててもよいことを DBExpress に伝える方法はありますか? または、これに対して実行可能な回避策がありますか
次のようなものを追加する必要は避けたい
l_input := copy(l_input,0,fieldLength-1);
乱雑に見え、コードの保守が難しくなります。
Delphi 2007 と Firebird 2 をインターベース ドライバ経由で使用していますが、それが役に立ちますか?
アップデート:
@ Erick Sasseそれはあなたの権利のように見えます。firebird の FAQ サイトhttp://www.firebirdfaq.org/faq79/でエラー メッセージを見つけました。
@ inzKulozik ActiveSQL.ParamByName('AMYFIELD').Size を動作させることはできませんが、LeftStr は正常に動作しますが、これはまだ面倒で、維持するのが困難です。
SQL に substr を追加するメソッドも見ました。
理想的には、この問題を修正する Firebird/DBExpress 構成設定が必要ですが、それが見つかるまで inzKulozik のソリューションを使用し、テーブル構造があまり変わらないことを願っています。
firebird - InstallShield を使用した FireBird のインストール
InstallShield を使用して Firebird (InterBase 由来の RDBMS) をインストールするための適切なスクリプトまたは何かを見つけることができないようです。firebird インストール実行可能ファイルを使用してサイレント インストールする方法がありますが、InstallShieldscripts について十分な知識がありません。a) InstallShield から exe を実行する方法 b) InstallShield を使用して firebord をインストールする方法に関する情報を誰かが知っていれば、私は非常に感謝しています! どうもありがとう、マット