問題タブ [sqlite.swift]

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

ios - sqlite swift iOS を使用した sqlite データベースへの複数アクセス

これが私のシナリオです。

アプリにログインするときに複数のリクエストがあり、そのうちの 1 つに 10,000 件以上のレコードが含まれています。

プロジェクトで SQLite.swift を使用しています。

ユーザーがログアウトしないか、データベースからデータを検索または取得するなどのタスクを 1 つ以上実行しない場合、すべて正常に機能しています。いずれかのケースが発生すると、アプリがスタックまたはクラッシュします。

一括挿入にトランザクションを使用していますが、別の同じテーブル データにアクセスしようとすると、すべてが完了するまでアプリがフリーズします。

複数の接続を使用してデータベースに挿入しようとしましたが、別の接続がデータベースを使用している場合、そのデータベースはロックされ、アプリがクラッシュします

致命的なエラー: 「試してください!」式が予期せずエラーを発生させました: データベースがロックされています: ファイル /Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-703.0.18.1/src/swift/stdlib/public/core/ErrorType.swift、54 行目

ここで DataManager.con はシングルトン オブジェクトです

助けてください。

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

swift - IN 条件を使用して SQLite.swift の FTS テーブルにアクセスする方法

SQLite.swift を使用して FTS テーブルをクエリしようとしています。以前は Android でやっていました。私がやろうとしていることの本質はこれです:

SQLite.swiftのドキュメントから、IN条件は次のように記述できることがわかります

そして、仮想テーブルは次のようにクエリできます:

しかし、これらを組み合わせる方法がわかりません。任意の SQLを実行する必要はありません(ただし、この回答のおかげで現在は機能しています)。

アップデート

これが機能していない私の最近の試みです:

次の行でcontains(id)エラーがスローされます。

タイプ 'Expression' の値を予期される引数タイプ '@noescape (Row) throws -> Bool' に変換できません

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

swift - SQLite.swift で正しいバインディングを使用して、任意の SQL ステートメントから結果を取得する

SQLite.swift のドキュメントには、任意の SQL の実行について次のように記載されています。

このように値を直接取得したかった

しかし、行インデックスは型Binding?であり、それを必要な型に変換する方法がわかりません。ソースコードStatement.bindにメソッドがあるようですが、それを適用する方法をまだ発見していません。

0 投票する
0 に答える
185 参照

query-performance - sqlite.swiftでクエリの実行時間を取得するには?

したがって、SQLite.swift は非常に優れています。以下を使用して SQL クエリをトレースしています。

それは正常に動作します。ただし、SQL 実行時間も出力に追加したいと思います。

それを行う方法はありますか?

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

ios - SQLite Swift ラッパーの SQLite をインポートできません

SQLite.Swift の手動インストール プロセス ( https://github.com/stephencelis/SQLite.swift ) を正確に実行しましたが、"SQLite のインポート" で赤い警告が表示されます。

OS X (10.11.6) XCode 7.3.1

質問

ヘッダー ファイルを作成して含める必要はありますか?

参考情報

SQLite.xcodeproj では、libsqlite3.dyslib の代わりに libsqlite3.tbd が自動的にリンクされます。

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

ios - tableView(_:numberOfRowsInSection:)でエラーがスローされた場合の対処方法は?

私の iOS アプリには、items多くの行を持つテーブルを持つ SQLite データベースがあります。すべてのアイテムをメモリにロードすることを避け、代わりに現在表示されているアイテムのみをロードしていUITableViewます。

データベースとやり取りするときに使用できるSQLite.swiftを使用しています。テーブルthrowからカウントを取得する場合、正しいことは何ですか?itemsthrow

このようにユーザーが閉じることができないというアラートを表示しようとしました。

Itemsクラスはこんな感じです。