タグ

SQLに関するetsuya-tのブックマーク (6)

  • PDOの真の力を開放する - PHPでデータベースを扱う(3)

    ちょっと遅れましたが、シリーズの第3回です。前回までに論じた内容をふまえて、簡単な実装を示します。↓前回までの内容はこちら。 DAOの悪夢 - PHPでデータベースを扱う(1) - 泥のように ドメイン駆動設計という救世主 - PHPでデータベースを扱う(2) - 泥のように 題材 「記事にタグを設定できるブログ」みたいなシステムを考えてみます。ブログ記事を示すEntryテーブル、タグを表すTagテーブルの二つを用意しました。MySQL WorkbenchによるER図(鳥足記法)は以下になります。 1つのEntryに対して複数のTagがある、1対多の関係です。同じTagが複数のEntryに関連するため、多対多の関係と見なすこともできそうですが、タグ程度だとあまり意味がないので、これ以上のテーブル分割はやめておきます。 Entryテーブルの主キーがentryIdと冗長な名前をしているのは、自

    PDOの真の力を開放する - PHPでデータベースを扱う(3)
  • MySQLのEXPLAINを徹底解説!!

    以前、MySQLを高速化する10の方法という投稿で「EXPLAINの見方についてはいずれ解説しようと思う」と書いてしまったので、今日はその公約?を果たそうと思う。 MySQLのチューニングで最も大切なのは、クエリとスキーマの最適化である。スキーマの設計は一度決めてしまうとそのテーブルを利用する全てのクエリに影響してしまうためなかなか変更することは出来ないが、クエリはそのクエリだけを書き直せば良いので変更の敷居は低い。そして遅いクエリをなくすことは、性能を大幅に向上させるための最も有効な手段である。従って、アプリケーションの性能を向上させたいなら、まず最初にクエリのチューニングを検討するべきなのである。 最適化するべきクエリはスロークエリログやクエリアナライザで見付けられるが、ではそのようなクエリが見つかった場合にはどのように最適化すればいいのか?そのためにはまず現在どのようにクエリが実行さ

    MySQLのEXPLAINを徹底解説!!
  • 【VBA】ExcelマクロからSQLのinsert文を自動生成する方法 | ヘッドウォータースのブログ TechNote

    カンボジアから帰国し、一ヶ月あまりが過ぎました。 まだまだ自己成長のために、隙間時間を見つけて勉強しております。 現在はExcelのマクロを勉強しておりまして、勉強の成果を記事にしてみました。ExcelからSQLのinsert文を作ります。 参考サイト:ExcelからSQLのINSERT文を作成するマクロ 下表の左上にカーソルを合わせて、マクロを実行すると、 このようなinsert文が作られます。 INSERT INTO Member (ID, name, hometown, gender, birthday) values (0, '稲葉浩二', '千葉県', '男', '1970/03/05'), (1, '井上もも', '愛知県', '女', '1983/02/25'), (2, '田村昂之', '新潟県', '男', '1991/01/10'), (3, '北崎七重', '北海道'

    【VBA】ExcelマクロからSQLのinsert文を自動生成する方法 | ヘッドウォータースのブログ TechNote
  • CoreDataはもう古い?新しいモバイルデバイス向けデータベース「Realm」を使ってみた (Swift/Objective-C) - Qiita

    正月にSwiftでRealmを使ってみてよかったのでまとめてみました。 Realmとは Realmはモバイルデバイス向けの新しいデータベースです。実体はTightDBというC++で書かれた独自のエンジンを使用しているようで、マルチプラットフォーム化もされていてiOS/Mac OS/Android向けのSDKが公開されています。 ■Realm公式 https://realm.io CoreDataに慣れているとそんなにハマることはなかったですが、Web開発者で特にSQLゴリゴリ書いて開発するタイプの人にはちょっとハマると思ったのでよく使うSQLをベースにまとめてみました。 なお、コードはSwiftですがObjective-CでもAndroidでもたぶん同じ感じだと思います。 2015/2/17: Objective-Cのコードを追記しました。 CREATE DATABASE RealmはSQ

    CoreDataはもう古い?新しいモバイルデバイス向けデータベース「Realm」を使ってみた (Swift/Objective-C) - Qiita
  • PHPプログラミング初心者入門講座

    PHPにはMySQLを利用するための関数が、あらかじめ用意されています。実はデータベースの基的な操作は7つの関数だけで行なえます。 今回はその内の6つについて解説します。もちろん便利なMySQL関数はたくさんありますが、最初に覚えるのはこれだけで十分です。 しかも関数は使うパターンが決まっているので、一度基的なプログラムを作ればあとは流用することができます。 またMySQLのデフォルトでは、パスワードが無い「root」ユーザーが設定されているので、これを接続に使うことにします。 mysqlデータベースのuserテーブル 【1】sample100 フォルダを作成します。 【2】新たに select.php を作成します。 *「\」はWindowsではエンマークのことです。 保存先 C:\phpdev\www\test\sample100 ファイル名 select.php <?php $u

    PHPプログラミング初心者入門講座
  • FOREIGN KEY制約(外部キー制約を設定する)

    テーブルを作成するときにカラムに FOREIGN KEY 制約(外部キー制約)を設定することで、対象のカラムに格納できる値を他のテーブルに格納されている値だけに限定することができます。ここでは MySQL における FOREIGN KEY 制約の使い方について解説します。 FOREIGN KEY制約(外部キー制約)とは FOREIGN KEY制約(外部キー制約)とは親テーブルと子テーブルの2つのテーブル間でデータの整合性を保つために設定される制約です。次の図を見てください。 参照する側の子テーブルにある部署カラムに対し、相手側として参照される側の親テーブルにある部署カラムとを指定して FOREIGN KEY 制約を設定します。するとこの2つのカラムでは整合性が保たれるように設定されます。 具体的には子テーブルにデータを追加するとき、 FOREIGN KEY 制約が設定されたカラムには、親テ

    FOREIGN KEY制約(外部キー制約を設定する)
  • 1