問題タブ [sqlite]

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

python - Sqlite3(Djangoを使用)で大文字と小文字を区別しない「一意の」制約を実現できますか?

では、Python 2.5 の組み込みのデフォルト sqlite3 を使用していて、次のコードを持つ Django モデル クラスがあるとします。

管理インターフェイスのセットアップが完了しましたが、some_field の一意の制約が大文字と小文字を区別。

一意性をチェックするときに、機密性の高い比較でsqlite に強制的にケースを実行させる方法はありますか?

Djangoのドキュメントでこれのオプションを見つけることができないようです。sqliteに直接実行して、希望どおりに動作させることができるかどうか疑問に思っています。:-)

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

c - SQLite を使用してメモリからデータベースを開くにはどうすればよいですか?

SQLite をロードする方法はすべて、文字列を使用して名前付きファイルからロードする必要があるようです。SQLite データベースをメモリからロードしたいと思います。

データベースはすでにメモリにロードされています。

0 投票する
12 に答える
160042 参照

sqlite - SQLiteの2つの日付の違い

SQLiteで2つの日付の日数の差を取得するにはどうすればよいですか?私はすでにこのようなことを試しました:

毎回0を返します。

0 投票する
5 に答える
2769 参照

database - 埋め込みデータベースを備えた PowerBuilder アプリ?

PowerBuilder で SQLite などを使用することは可能ですか? 組み込みのオープン ソース データベースが必要です (追加料金なし)。

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

sqlite - SQLiteの非排他予約ロック?

特にトランザクションに関して、サイトの SQLite パフォーマンスを改善することを検討しています。本質的に、私が探しているのは、データベースへの書き込みをプロセス内で延期して、すべてを一度に実行できるようにする方法です。ただし、更新クエリを蓄積している間、他のプロセスがデータベースからの読み取りと書き込みの両方を実行できるようにし、プロセスでコミットが発行されたときにのみ書き込み用にファイルをロックしたいと考えています。

ドキュメントを見ると、トランザクションで更新コマンドが発行されると、プロセスは RESERVED ロックを取得するように見えます。これは、(私の記憶が正しければ) 更新クエリを独自のトランザクションに追加しようとする他のプロセスを意味します。またはトランザクションをコミットすることはできないため、トランザクションがロックされたプロセスでコミットされるまでブロックされます。

この特定の機能には、データの整合性に関する非常に優れた理由があると確信しています。私が言えることは、私の場合、これらの更新を同時に実行しても危険はないということだけです。

1 つの解決策は、各プロセスで呼び出したいクエリのテキストを配列に蓄積し、書き込みの準備ができたらループダウンすることですが、SQLite トランザクションを実行できるかどうか疑問に思っています。これを自動的に行ってください。

更新:「すべての更新を一度に行う」というのは、基本的に SQLite でトランザクションを使用して、クエリごとではなく、プロセスごとに 1 回だけ排他ロックを取得してディスクに書き込むことです。これにより、SQLite を使用すると 100 倍のスピードアップが実現します。

いくつかの基本的なテストを行ったところ、トランザクションにクエリを追加する複数のプロセスがあると、そのプロセスが RESERVED ロックを取得しようとする更新クエリにヒットしたようです。予約されたロックを持つことができるプロセスは 1 回だけであるため、ロックを取得しようとする他のプロセスは、ロックを持つプロセスがトランザクションを終了するまでブロックされます。

私はまだパフォーマンスの低下に遭遇していないので、この問題は時期尚早の最適化である可能性があることを認めますが、いくつかの簡単なテストを実行し、100 人のユーザーがそれぞれ 100 個のクエリを使用してトランザクションを作成および実行するのに、私のマシンの PHP で約 4 秒かかりました。

0 投票する
14 に答える
91406 参照

java - Hibernate に代わる軽量の代替品?

Derby や Sqlite などの軽量データベースにデータを格納したい単一ユーザーの Java プログラムがあります。プログラムでデータ抽象化レイヤーを使用したいと考えています。Hibernate には多くの設定が必要なようで、私が必要としているものにはやり過ぎです。Hibernate の軽量な代替手段は何ですか?

0 投票する
4 に答える
29589 参照

objective-c - Objective-C と sqlite の DATETIME 型

Objective-C のオブジェクトにマップしようとしている sqlite3 テーブルがあります。テーブルの 1 つの属性は、DATETIME として格納される「completed_at」です。

'completed_at' 属性に適切にマップされる私の目標 C クラス (NSObject から継承) にプロパティを作成したいと考えています。

Objective-C には NSDate 型がありますが、それが直接マップされるかどうかはわかりませんか?

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

sql - IDのSQLite自己結合のバグ?

IDに基づいて行のペアワイズの組み合わせを生成しようとしています。SQLiteのバージョンは3.5.9です。テーブルの内容は次のとおりです。

テーブルスキーマは次のとおりです。

次に、IDに自己結合があります。

これは明らかに私が望んでいることではありません。ここで、t2とt1の順序を変更すると、正しい結果が得られます。

ここで、別の実験として、行ID以外の数値列を組み合わせてみました。一方、どちらの場合も正しい結果が得られます。

私は誰かがここで何が起こっているのかについて洞察を与えることができることを望んでいます。私が理解している限り、それはSQLiteのバグか、SQLの微妙な側面のどちらかです。

ありがとう、

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

c++ - sqllite3インメモリデータベースを作成するにはどうすればよいですか?

sqlite3の適切な使用法の1つは、「インメモリデータベース」です。これは私のC++アプリケーションにとって本当に便利なツールのように思えます。これがCまたはC++でどのように行われるかの例を誰かが持っていますか?私は特に、いくつかのフラットファイルをインメモリデータベースに丸呑みしてから、いくつかの結合を行うための標準的な方法を探しています。

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

sql - SQLiteはSCOPE_IDENTITYをサポートしていますか?

単純なINSERTを実行して、ID(主キーの自動インクリメント)を返そうとしています。私はもう試した

次のエラーが表示されます

SQLiteはSCOPE_IDENTITYをサポートしていますか?
もしそうなら、私はそれをどのように使用しますか?
そうでない場合、私の(できれば「スレッドセーフ」な)代替手段は何ですか?