問題タブ [better-sqlite3]
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 - SQL JOIN は、テーブル内の元の行数よりも多くの行を返します
これは簡単な質問かもしれません。残念ながら、この背後にあるロジックを理解できません。SQLで作成された3つのテーブル、つまりtestfall、testschritte、inhalt、およびcases、test_step、kommentarがそれぞれ列です。
testchritte の test_step 列には 2220 行があり、testfall テーブルのケースには 9 行があります。したがって、結果カウントはこれらの行のどこかにあるはずですが、JOIN 後の結果には 45327 行あります。これはどのように可能ですか?これが起こった場合、データは正しくありませんか?
sqlite - sqlite3 + ノード: db をいつ閉じるか?
私はでbetter-sqlite3を使用していますNode
が、私の質問はnode-sqlite3にも当てはまると思います。
サーバーでレンダリングされた Web サイトに関して、基本的に 2 つの簡単な質問があります。
.close()
データベースを明示的に呼び出す必要がありますか? 現在のスコープ(現在の関数など)が終了すると自動的に閉じることをどこかで読んだことを覚えているようです。.close()
大量のリクエストを受け取る Web サーバーのシナリオで呼び出しを行わない場合はどうなりますか?さまざまなコンポーネント (認証、承認、ローカリゼーション、支払いなど) が多数あり、各コンポーネントがリクエストの有効期間全体にわたってデータベースにアクセスする必要がある場合とそうでない場合があります (これらは非常に短期間ですが、例外を除きます)。支払い)、したほうがいいですか?
- サーバーの存続期間中に1つのdb接続を持ち、それを渡します
- リクエストの存続期間中に 1 つの db 接続を持ち、それを渡します
- 何かが必要になるたびに、おそらくリクエストごとに2〜3回、新しい接続を開きます(それが必要な場合は、関数が戻ったときに明示的または暗黙的に閉じます)
ありがとうございました
node.js - sqlite3 を Sveltekit に統合するには?
私はほとんどのフルスタック アプリケーション (node/express、django/drf + api エンドポイントのコンシューマーとしてのフロント エンドの svelte) に sqlite3 を使用しており、sqlite3 を統合する方法を見つけようとしています。
これが私がしたことです
あなたは sveltekit に精通していると思います。初めての方は、SvelteKitをご覧ください。
- better-sqlite3モジュールをインストールしました
- フォルダ内に作成された
database.js
ファイルsrc/lib
- 次のコードを追加しました。
- 次のコードを使用して、フォルダー
index.json.js
内のデータベースからすべての記事を取得するエンドポイントを作成しました。src/routes
- そのエンドポイントを index.svelte (ホームページ) 内で次のように使用しました。
- 取得した記事は、次のように使用されます。
それでおしまい。