問題タブ [firebird2.5]
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.
sql - 外部キーでソートするときの SQL クエリの高速化
これはより一般的な SQL の問題ですが、Firebird/Interbase 固有の最適化について知っている人がいれば、私は Firebird 2.5 を使用しています。まず、以下は、私が解決しようとしている問題を説明するための単純化されたスキーマの例です。
実行しようとしているクエリは次のとおりです。
「XXX」には、必要な user_idが入力されています。だから私がやっていることは、特定のユーザーが所有するデータテーブルからすべての行を選択し、 data_set名に基づいて結果を並べ替えることです。
これはそのまま機能しますが、問題は、データテーブルに 10 億行を超える行があり、data_setテーブルも小さくないことです。1 つのユーザー ID の結果セットは、何億行にもなる場合があります。ORDER BY が機能するためには、データベースが大量の一時データを作成する必要がありますが、これは非常に遅く、多くのディスク領域を使用します。ORDER BY がなければ高速ですが、必要なようにソートされていないことは明らかです。
1 つの解決策は、 data_set.nameの値を取り、それらをdataの varchar 列に入れることです。次に、インデックスを作成して、すばやく並べ替えることができます。このアプローチの問題は、多くの重複データがあり、データベースが非常に巨大になることです。
別の解決策は、インデックス付きビューまたはインデックス付き計算列のようなものです。私の知る限り、どちらも Firebird でサポートされていません。
他のアイデアはありますか?
sql - 予約語 TimeStamp をフィールド名として使用する (Firebird 2.5)
MSSQL と SQLite に加えて、Firebird 2.5 で動作するように既存のアプリケーションのデータ層を拡張していますが、つまずきにぶつかりました。
データ/時刻を TimeStamp 型として格納する TimeStamp というフィールドがあります。これは、型が datetime である MSSQL および SQLite では問題なく動作しますが、Firebird では失敗します。次の SQL:
一見動作しますが、TimeStamp フィールドはフィールド名 "CONSTANT" として返され、内容はテキスト "timestamp" です。
Firebirdでこれを行うことは可能ですか、それともフィールドの名前を変更して他のデータレイヤーのコードを変更する必要がありますか.
performance - 巨大なページバッファと複数の同時プロセス
お客様の1人は、平均アクティブ接続数が約70〜80の35Gbデータベースを持っています。データベース内の一部のテーブルには、テーブルごとに1,000万を超えるレコードがあります。
今、彼らは新しいサーバーを購入しました:4 *6コア=24コアCPU、48 Gb RAM、2RAIDコントローラー256Mbキャッシュ、それぞれに8 SAS15KHDD。
64ビットOS。
私は疑問に思っています、最速の構成は何でしょうか:
1)巨大なバッファを備えたFB2.5スーパーサーバー8192*3500000ページ=29Gb
また
2)1000ページの小さなバッファを備えたFB2.5Classic。
たぶん誰かが以前にそのようなケースをテストしたことがあり、私に仕事の日数を節約するでしょう:)
前もって感謝します。
firebird - MON$STATEMENTS.MON$STATE の値は何を表していますか?
FB 2.5 RC3 サーバーに対してクエリを実行すると、前述のフィールドに値 0、1、2 が表示されます。しかし、リリース ノートには 0 と 1 しか記載されていません。2 とはどういう意味ですか?
sql - FIREBIRDフィールドの最初の単語だけを検索する方法は?
フィールドの最初の単語だけを検索する必要があります。例:
私のテーブル:
私のクエリ(結果):
このクエリが必要ですが、SQL(Select?)ステートメントを作成することは知っています。Substringを使用してみましたが、結果が得られません。
database - Firebird - クエリを使用して count ODBC を作成する
カウントODBCにクエリを挿入することは可能ですか?
例:
* From Customers where name = 'John'; を選択します。
データベースにビューを作成できません。Word に接続するには、Count ODBC でそのクエリを作成する必要があります。
entity-framework-4 - ToListを呼び出すEntity Framework NullReferenceException?
私は WPF と EF に非常に慣れていないので、テーブルのデータをデータグリッドに表示しようとしています。既存のデータベースからエンティティ モデルを取得しましたが、単純な操作が機能しているようです (「first」を使用して行数を取得する)。
2.0.5 DDEX プロバイダーと 2.5.2 ADO NETProvider を使用して、Firebird 2.5.0 に対して実行しています。
データをグリッドまたは単にリストに取得しようとすると、null 参照例外が発生します。
エンティティ フレームワークの使用方法を理解していないだけかもしれませんが、ネットで見た例を見ると非常に簡単に見えます。
例外の詳細は次のとおりです。
内部例外:
cloud - クラウド アプリケーションの Firebird?
通常のイントラネット システム (初期ベータ段階) として開始される POS (販売時点管理) システムを開始しますが、後でクラウド サービスに拡張したいと考えています。ハイブリッドソリューションとして提供します。
展開が簡単で、フットプリントが最小限で、組み込みのマルチスレッドサーバーを使用できるため、firebird を使用したいと考えています。ただし、フォールトトレランス、データ複製などを備えたクラウドサービスにfirebirdを使用して、中小企業がビジネスを展開するのに十分な信頼性を確保できるかどうか心配しています(フレッシュブックのサービスと同様)。
私の他のオプションはPostgressを使用することですが、私はそれを経験していません。
FB は SAAS バックエンドとして使用するのに十分ですか? 成功した実装はありますか?
PD: GoGrid または Rackspace にデプロイすることを考えています...
visual-studio-2010 - FirebirdDDEX.NETプロバイダーの統合をVisualStudio2010と連携させることができません
説明:FirebirdクライアントとDDEX for Visual Studio 2010(.NET 4.0)をインストールした後、Visual Sutio 2010(プロフェッショナル)->サーバーエクスプローラー->データ接続->接続の追加からfirebirdに新しい接続を追加できません。
実行した手順:-firebirdclient(NETProvider-2.6.0.msi-> C:\ Program Files \ FirebirdClient)をインストールしました-アセンブリ(FirebirdSql.Data.FirebirdClient.dll)をgacプルーフに追加しました:
firebirdsql.data.firebirdclient.dll Microsoft(R).NETグローバルアセンブリキャッシュユーティリティ。バージョン4.0.30319.1Copyright(c)MicrosoftCorporation。全著作権所有。
- DDEX 2.0.5、-> C:\ Program Files \ FirebirdClient\DDEX205を取得しました
- FirebirdSql.VisualStudio.DataTools.dllをgacに追加しました(誰かがそれが役立つかもしれないと書いた)
/ i FirebirdSql.VisualStudio.Data Tools.dll Microsoft(R).NETグローバルアセンブリキャッシュユーティリティ。バージョン4.0.30319.1Copyright(c)MicrosoftCorporation。全著作権所有。
- FirebirdDDEXProvider32のVS2010バージョンを編集
@="。NETFrameworkData Provider for Firebird" "DisplayName" = "Provider_DisplayName、FirebirdSql.VisualStudio.DataTools.Properties.Resources" "ShortDisplayName" = "Provider_ShortDisplayName、FirebirdSql.VisualStudio.DataTools.Properties.Resources" "Description" = " Provider_Description、FirebirdSql.VisualStudio.DataTools.Properties.Resources "" CodeBase "=" C:\ Program Files \ FirebirdClient \ DDEX205 \ FirebirdSql.VisualStudio.DataTools.dll "" InvariantName "=" FirebirdSql.Data.FirebirdClient "" Technology "= "{77AB9A9D-78B9-4ba7-91AC-873F5338F1D2}"
それ(ファイル全体)もインストールしました-C:\ Windows \ Microsoft.NET \ Framework \ v4.0.30319\Configに追加しました
で追加しました
FbConnection経由でfirebirddbに接続できます
Visual Studio 2010 IDEでは、サーバーエクスプローラー->データ接続->接続の追加を選択してFirebirdデータソースを選択できますが、これ以上取得することはできません。いずれかのフィールドでキーを押すとすぐにウィンドウが消えます(または、言語を選択した場合は、方言を入力すると、ウィンドウが消えます...)。
誰かが私を助けることができますか?
firebird - Firebird 2.5 は「有効なデータベースではありません」と報告しますが、
Firebird を実行している 2 台のコンピューター (A と B と呼びましょう) と 2 つのデータベース ファイル (a.fdb と b.fdb と呼びましょう) が両方のコンピューターにコピーされています。BI でメッセージを受け取る
b.fdb は有効なデータベースではありません。他のファイルは機能しますが、A では両方のファイルが機能します。
B が古いバージョンである場合、これは簡単に説明できますが、新しいバージョンです (FB 2.1 であり、この問題のために FB 2.5 をインストールしました)。ファイル a.fdb と b.fdb には、それぞれ ODS 11.1 と 10.1 が含まれています。FB の新しいバージョンは ODS 10.1 をサポートしなくなったようですが、信じられません。しかし、他に説明がありませんよね?