問題タブ [sqlite-net]

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

c# - SQLiteConnection はトランザクション内に配置されていますか?

これは機能しますが、Resharper はコメント行に「 Discarded Closure へのアクセス」と言っています

この代替アプローチも機能しますが、Resharper からの同じフィンガーワグを使用します。

どちらも機能するので、あまり問題にはならないと思いますが、一方の方法がもう一方の方法よりも優れていますか? Resharper を緩和し、それでも仕事を成し遂げる方法はありますか?

アップデート

Donal の発言は理にかなっているように見えましたが、このリファクタリングされたコードで、xaction 内の Insert ステートメントで Resharper の「潜在的なコード品質の問題」という警告がまだ表示されます。

多分私は間違った方法で問題をリファクタリングしていますか? これは前の方法とあまり変わらないと思います。locs インスタンスが確実に破棄されるようにするにはどうすればよいですか? それとも、それはここでの問題ではありませんか?

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

sqlite - Windows Phone 8 アプリで既存の sqlite データベースを使用する方法

Windows Phone 8 アプリにインポートする必要がある既存の Android アプリのデータベースがあります。アプリの最初の読み込み時に実行される巨大な人口スクリプトを作成するためにこれを行う唯一の方法はありますか?

私は現在、このブログ投稿の指示に従って、Peter Huene による新しい sqlite-net-wp8 を使用しています。ただし、例はすべてデータベースの作成に関するものであり、既存のデータベースを使用するものではありません。どんな助けでも素晴らしいでしょう。

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

sqlite - PropertyInfo.CanWrite プロパティ デバッグ ビルドでは true、リリース ビルドでは false

Android用のXamarinのmonoを使用してAndroidアプリケーションを構築しており、sqlite-netを使用しているクロスプラットフォームの永続化ソリューションを構築しています

デバッグ ビルドではすべて問題なく、すべてのユース ケースがパスし、満足しています。リリース用にビルドする場合、データ レイヤーはまったく機能しません。リリース モードであるため、デバッグするのはかなり困難ですが (定義上は推測します)、最終的に問題を拡大しました: テーブルを作成するとき、sqlite-net フレームワークはプロパティを反復処理し、書き込み可能なものだけを使用します。問題は、リリース モードでは out POCO のすべてのプロパティが PropertyInfo.CanWrite に対して false を返すことです。

0 投票する
3 に答える
7258 参照

c# - SQLite用のクラスで文字列のリストを使用できますか?

SQLite-netがテーブルを表すために使用するクラスで使用されるデータ型にはどのような制限がありますか?具体的には、これを使用できますか?

...またはこれが必要になります:

...または他の何か?

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

vb.net - Sqlite データ プロバイダー .net エラー: SQL 応答コマンド プロンプトと SQLite ADO.NET プロバイダーが異なる

SQLite ADO.NET Provider のバグと思われる問題を発見しました。

環境は Windows 7 Pro で、Visual Studio 2012 Professional を使用し、Visual Basic.net と ADO.NET 2.0 を使用しています。データ プロバイダー バージョン 1.0.66.0 - v2.0.50727。

テストするために、1 つのテーブル (「操作」) を持つ単純な SQLite データベースを使用しています。

データは次のようになります。

コマンド プロンプトで次の SQL SELECT ステートメントを実行すると、次のようになります。

私は(正しく)持っています:

代わりに、以下の VB.net コード (ボタン付きのフォームのみ) を使用すると:

あなたはこの結果を持っています(間違っています):

すでにこの動作に遭遇した人はいますか?

これはデータ プロバイダーのバグですか? それとも私は何か間違ったことをしていますか?

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

c# - SQLite:そのようなテーブルはありません

SQLiteException「そのようなテーブルはありません: HomepageSection」と断続的に表示されます。常に同じテーブルですが、アプリを停止して再起動すると、問題はなくなりました。データベースが存在しない場合もあれば、存在する場合もあります。

テーブルは、データベース ファイルが開かれるときに、sqlite-net sSQLiteAsyncConnection.CreateTableAsyncメソッドを使用して作成されます (はい、この例外が発生する前にテーブルが待機されます)。

正しいデータベース ファイルに接続しています。これを何度も確認しました。接続オブジェクトから取得したパスを SQLite ブラウザで直接開いたところ、HomepageSectionテーブルがありません。

次のSQLiteExceptionクエリでスローされます: insert OR REPLACE into "HomepageSection"("Title","Version","Id","Updated") values (?,?,?,?)(SQLite.cs、Prepare2()、行 2951)

テーブルを作成したとされる行でスローされた例外はありませんでした。

これを理解するためのアイデアはありますか?

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

c# - アプリの更新時にデータベースをアップグレードする

Windows ランタイム拡張機能用の SQLitesqlite-net ライブラリを使用してローカル SQLite データベースにデータを格納する Windows ストア アプリを開発しています。このデータベースはWindows.Storage.ApplicationData.Current.LocalFolder.Pathパスに作成されます。すべてが正常に機能し、送信時に問題が発生することはないと思います.

質問1

しかし、アプリを変更して再度送信し、ユーザーが更新するとどうなりますか? データベースファイルは削除されますか? ユーザーは自分のデータを失いますか?

質問2

古いデータベースを使用して、アプリのバージョン間でアップグレードすることはできますか?

Android アプリを開発する際の方法は知っていますが、この Windows ストア アップデート プロセスは私にとって初めてのことであり、ユーザー データを回復できなくなるような間違いを犯してしまうのではないかと心配しています。誰かがすでにそれを経験している場合は、それがどのように機能するか教えてください.

前もって感謝します

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

c# - sqlite-netを使用してすべてのデータベースモデルで機能する親クラスに挿入、更新、および削除を実装する方法は?

SQLiteでデータベースを使用していますWindows 8 Store Application。さらに、SQLite ラッパーを使用sqlite-netしてデータベースの操作を行います。

私の状況をご理解いただけるよう、詳しくご説明いたします。クラスLocationModel classesなど、ビジネスロジックを含むものがあります。次に、 LocationDbなど、データベース テーブルの生成元があります。DatabaseModels

すべての Model クラスで、 Insert(Model model) 、 Update(Model model)Delete(int id)GetAllRecords()GetRecord(int id)などの基本的なデータベース メソッドを実装したくありません。代わりに、これらのメソッドをすべてのモデルの基本クラスに実装したいと考えています。すべてのモデルのこの基本クラスはModelBaseと呼ばれます。すべてのデータベース モデルの基本クラスはDbModelBaseです。

すべてのモデルで次のように Insert メソッドを実装しても問題はありません。

しかし、sqlite-net を使用して他のものを実装する方法がわかりません。特定のテーブルで特定のデータ レコードを検索する必要があります。IDを含むモデルオブジェクトがあります。しかし、特定のテーブルを明示的に呼び出さずに、1 つのメソッドをすべてのモデル クラスで動作させるにはどうすればよいでしょうか? 次のコードは、単一の特定のデータベース テーブルに対して機能します...

…でも書けない