akiyoko blog

akiyoko の IT技術系ブログです

データベース

Django ORM の SQL を出力する方法まとめ

Django ORM を使っていると、どういった SQL が発行されているか、クエリの内容を出力したいときが多々あります。SQL を出力する方法についてはいくつか方法がありますが、今回はその方法を思いつく限りピックアップしてみようと思います。 1)QuerySet の …

Django ORM の select_related, prefetch_related の挙動を詳しく調べてみた

Django ORM の QuerySet には、select_related および prefetch_related というメソッドがありますが、イマイチ使い勝手がよく分からなかったりします。 公式ドキュメントにはこう書いてありますが、 select_related works by creating an SQL join and incl…

「一対一」「一対多」「多対多」のリレーションを分かりやすく説明する

こんにちは、akiyoko です。今回はデータベース設計の話です。 分かりそうでよく分からない、「一対一」「一対多」「多対多」のリレーションを分かりやすく説明してみます。 一対一リレーション 分かりやすい定義 双方のレコードが一対一に対応する あるいは…

Mac の MySQL クライアントに「Sequel Pro」を使っているなら PostgreSQL クライアントは「PSequel」がオススメ

タイトル通りですが、Mac の MySQL クライアントに「Sequel Pro」を使っているなのであれば、PostgreSQL クライアントは「PSequel」がオススメです。 長年、Mac の PostgreSQL クライアントに不満があり、使い勝手の良いアプリを探し求めていたのですが、つ…

PyCharm のデータベースツールが最強。ER図も簡単に書き出せるよ

はじめに Django アプリを開発するのに、Mac 版 PyCharm を使っています。PyCharm のデータベースツールを使うと、レコードの内容をテーブル表示、コンソールからSQL実行など、Sequel Pro で出来ることはほぼ代替できるし、ER図も書き出せてすごく便利です。…

PostgreSQL を Ansible Galaxy でさくっと3分でインストール

はじめに PostgreSQL 初心者です。 最近ちらほらと PostgreSQL を使うようになったのですが、いちいち手でインストールするのは面倒なので、さっくりと自動化したいと考えていました。 そこで 前回 紹介した、Ansible Galaxy です。 ローカルに Ansible がイ…

SQLite の使い方まとめ

これまで、 よく使う MySQL の Tips MongoDB の使い方まとめ と、MySQL と MongoDB についてまとめてきたので、ついでに SQLite についてもまとめておこうかと。 簡単に SQLite について説明すると、 ファイルおよびインメモリストレージに対応 ローカルで使…

MongoDB の使い方まとめ

最近よく MongoDB を使っているのですが、ついこの間、「MongoDBの薄い本」(著:Karl Seguin・訳:濱野 司)というのを見つけて読んでみたのですが、すごく分かりやすかったのでご紹介。 コマンドを打ちながらでも1時間くらいで読み終えることができて、非…

よく使う MySQL の Tips

忘れがちな自分用に、よく使う MySQL の Tips をまとめてみました。データベース接続情報は以下とします。 データベース名 : wp_test ユーザ名 : wp_user パスワード : pass 基本系 MySQLの対話モードでなくて、コマンドからSQLを実行する mysql -u wp_user …