引き続き、Deno での DB アクセスを詰めて行きます。
今回は、sql_builder を使ってクエリの組み立てを試します。
参考
sql-builder 使ってみる
基本的なクエリ
サンプルが充実しているので、ほとんど README 見れば話が済む(なぜまとめようと思ったのか・・・)。
1 | import { Query, Where } from "https://deno.land/x/sql_builder/mod.ts"; |
README 通り動かないものがあったものの、書き方を変えれば対応できました。
副問い合わせを含むクエリ
副問い合わせについては、README にどうやら記載が無いです。
考えてみました。
1 | let builder = new Query(); |
1回での生成ができないものの、副問い合わせのあるクエリを生成できました。
副問い合わせまでできれば、十分使えそうです。
実際にクエリを実行してみる
deno_mysql で実行するクエリを sql_builder で
1 | //クエリビルダで生成したSQLを実行 |
クエリビルダーだけが分離したものを初めて使ったのですが、使用感は悪くはなさそうです。
ここまで DB ドライバ、ORM、マイグレーションツール、クエリビルダーと使ってきましたが、ある程度方向が見えました。
- nessieで、マイグレーション。
- sql_builderで、クエリ生成。
- deno_mysqlで、SQL実行。
nessie と、deno_mysql のデータベースへの接続コンフィグは、外に出して共通化すればより良さそうです。
これをまとめた形で、次また記載したいところです。
ではでは。