MySQLクックブック VOLUME 1

[cover photo]
  • 2003年11月 発行
  • 628ページ
  • ISBN4-87311-155-2
  • フォーマット
  • 原書: MySQL Cookbook

この商品は品切れ再入荷未定です

本書は、世界で最も人気が高いオープンソースのデータベースシステム「MySQL」の解説書です(全2巻)。MySQLは高速性と信頼性が評価され、Webアプリケーションの分野を中心に、多くの著名な企業や組織で採用されています。MySQLユーザが遭遇する問題を網羅し、そのまま使えるサンプルプログラムを豊富に収録した本書は、すべてのMySQLユーザにとって必携の書となることでしょう。VOLUME1の内容は「mysqlクライアントプログラム」「MySQLをベースにしたプログラムの記述」「レコード選択の手法」「文字列の処理」「日付と時刻の処理」「クエリ結果のソート」「サマリの生成」「メタデータの取得と仕様」「データのインポートとエクスポート」など。Perl、PHP、Java、Pythonについても詳しく解説しています。対応するバージョンはMySQL3.23、4.0が中心です。

MySQLクックブック VOLUME 2の紹介ページ

訳者まえがき
はじめに

1章 mysqlクライアントプログラムの使用
        レシピ1.0 はじめに
        レシピ1.1 MySQLユーザアカウントの設定
        レシピ1.2 データベースとサンプルテーブルの作成
        レシピ1.3 mysqlの起動と停止
        レシピ1.4 オプションファイルを使用した接続パラメータの指定
        レシピ1.5 オプションファイルの保護
        レシピ1.6 コマンド行パラメータとオプションファイルパラメータとの併用
        レシピ1.7 mysqlが見つからない場合の処理
        レシピ1.8 環境変数の設定
        レシピ1.9 クエリの発行
        レシピ1.10 データベースの選択
        レシピ1.11 部分入力したクエリのキャンセル
        レシピ1.12 クエリの繰り返しと編集
        レシピ1.13 データベース名およびテーブル名の補完入力の使用
        レシピ1.14 クエリにおけるSQL変数の使用
        レシピ1.15 ファイルからmysqlへクエリ読み込みを指示
        レシピ1.16 他プログラムからmysqlへクエリ読み込みを指示
        レシピ1.17 コマンド行におけるクエリの指定
        レシピ1.18 mysql入力ソースとしてコピーアンドペーストの使用
        レシピ1.19 クエリの出力をスクリーンからスクロールオフさせない方法
        レシピ1.20 クエリ出力のファイルやプログラムへの送付
        レシピ1.21 クエリ出力の表形式とタブ区切り形式の選択
        レシピ1.22 任意の出力列区切り記号の指定
        レシピ1.23 HTML出力の作成
        レシピ1.24 XML出力の作成
        レシピ1.25 クエリ出力における列見出しの圧縮
        レシピ1.26 クエリ出力行への番号付け
        レシピ1.27 長い出力行を読みやすくする
        レシピ1.28 mysqlの冗長レベルの制御
        レシピ1.29 対話式mysqlセッションのロギング
        レシピ1.30 実行済みクエリからのmysqlスクリプトの作成
        レシピ1.31 mysqlを計算機として使用
        レシピ1.32 シェルスクリプトにおけるmysqlの使用
        レシピ1.33 Unix でのシェルスクリプトの記述
        レシピ1.34 Windows におけるシェルスクリプトの記述

2章 MySQLをベースにしたプログラムの記述
        レシピ2.0 はじめに
        レシピ2.1 MySQLサーバへ接続し、データベースを選択し、切断する
        レシピ2.2 エラーのチェック
        レシピ2.3 ライブラリファイルの記述
        レシピ2.4 クエリの発行と結果の取得
        レシピ2.5 結果セット内の移動
        レシピ2.6 準備済みのクエリステートメントとクエリプレースホルダーの利用
        レシピ2.7 クエリにおける特殊文字とNULL値の使用
        レシピ2.8 結果セットの中のNULL値の処理
        レシピ2.9 オブジェクト指向のPHP用MySQLインターフェースの記述
        レシピ2.10 接続パラメータの取得方法
        レシピ2.11 まとめとアドバイス

3章 レコード選択の手法
        レシピ3.0 はじめに
        レシピ3.1 表示するカラムの指定
        レシピ3.2 プログラムを書く場合に、出力カラムの順序に関する問題を回避する
        レシピ3.3 出力されたカラムに名前を与える
        レシピ3.4 簡単にプログラムを書くためにカラムエイリアスを使用
        レシピ3.5 結合値を構成するためにカラムを組み合わせる
        レシピ3.6 検索する行を指定
        レシピ3.7 WHERE句とカラムエイリアス
        レシピ3.8 何がどのように動作するか知るために比較内容を表示
        レシピ3.9 クエリ条件の反転または否定
        レシピ3.10 重複する行の削除
        レシピ3.11 NULL値の使用
        レシピ3.12 NULL値を含むカラムの条件否定
        レシピ3.13 NULL値を含む比較処理をプログラムで記述
        レシピ3.14 NULL値を他の値にマッピングして表示
        レシピ3.15 結果セットのソート
        レシピ3.16 結果セットの先頭あるいは最後からレコードを検索する
        レシピ3.17 結果セットの中間からセクションを抽出
        レシピ3.18 適切なLIMIT値の選択
        レシピ3.19 式からLIMIT値を計算
        レシピ3.20 LIMITが「誤った」ソート順序を要求した場合に行うべきこと
        レシピ3.21 結果セットを選択し、既存のテーブルに入れる
        レシピ3.22 結果セットからディスティネーションテーブルを急いで作成
        レシピ3.23 テーブル間で安全にレコードを移動
        レシピ3.24 一時テーブルの作成
        レシピ3.25 正確なテーブルのクローニング
        レシピ3.26 ユニークなテーブル名の生成

4章 文字列を処理する
        レシピ4.0 はじめに
        レシピ4.1 引用符または特殊文字を含んだ文字列を書く
        レシピ4.2 文字列の末尾スペースを失わないようにする
        レシピ4.3 文字列の等価、相対順序のテスト
        レシピ4.4 文字列の結合あるいは分割
        レシピ4.5 文字列にサブ文字列が含まれているかを確認
        レシピ4.6 SQLパターンを備えたパターンマッチング
        レシピ4.7 正規表現を使用したパターンマッチング
        レシピ4.8 メタキャラクタの完全なパターンマッチング
        レシピ4.9 文字列を比較する時のケースセンシティブの管理
        レシピ4.10 パターンマッチングの中でケースセンシティブを管理
        レシピ4.11 FULLTEXT検索の使用
        レシピ4.12 短いワードのFULLTEXT検索
        レシピ4.13 FULLTEXT検索ワードの要求または除外
        レシピ4.14 FULLTEXTインデックスによるフレーズ検索の実行

5章 日付と時刻を処理する
        レシピ5.0 はじめに
        レシピ5.1 MySQLの日付形式の変更
        レシピ5.2 MySQLによる日付と時刻の表示
        レシピ5.3 現在の日付と時刻の決定
        レシピ5.4 フォーマット関数を使用して日付と時刻を分解
        レシピ5.5 構成要素抽出関数を使用して日付あるいは時刻を分解
        レシピ5.6 文字列関数を使用して日付あるいは時刻を分解
        レシピ5.7 フォーマット関数を使用して日付あるいは時刻を統合
        レシピ5.8 構成要素抽出関数を使用して日付あるいは時刻を統合
        レシピ5.9 日付と時刻を日付時刻値に結合
        レシピ5.10 時間と秒の変換
        レシピ5.11 日付と日数の変換
        レシピ5.12 日付時刻値と秒数間の変換
        レシピ5.13 時間に間隔を付加
        レシピ5.14 時刻と時刻の間隔の計算
        レシピ5.15 時刻間隔を構成要素へ分解
        レシピ5.16 時刻間隔を日付へ付加
        レシピ5.17 日付の間隔の計算
        レシピ5.18 完全にISO準拠でない日付文字列を正式なものにする
        レシピ5.19 年齢の計算
        レシピ5.20 既知の総計による日付の変更
        レシピ5.21 月初と月末の検索
        レシピ5.22 月の長さの検出
        レシピ5.23 サブ文字列の置き換えで、別の日付からある日付を計算
        レシピ5.24 特定の日付の曜日を検索
        レシピ5.25 現在の週の別の曜日の日付を検出
        レシピ5.26 別の週の平日の日付を求める
        レシピ5.27 うるう年の計算を実行する
        レシピ5.28 日付や時刻を数字として取り扱う
        レシピ5.29 文字列を時間値として強制的に取り扱う
        レシピ5.30 時間属性に基づいてレコードを選択
        レシピ5.31 TIMESTAMP値を使用
        レシピ5.32 行の最終更新時刻の記録
        レシピ5.33 行の作成時間の記録
        レシピ5.34 TIMESTAMP値で計算する
        レシピ5.35 TIMESTAMP値を読みやすい形式で表示

6章 クエリ結果のソート
        レシピ6.0 はじめに
        レシピ6.1 ORDER BY句を使用したクエリ結果ソート
        レシピ6.2 テーブルのサブセットのソート
        レシピ6.3 式の結果をソートする
        レシピ6.4 あるセット値によるソート中に他のセット値を表示
        レシピ6.5 ソートとNULL値
        レシピ6.6 文字列のソートにおけるケースセンシビティの制御
        レシピ6.7 日付によるソート
        レシピ6.8 暦日によるソート
        レシピ6.9 曜日によるソート
        レシピ6.10 時間によるソート
        レシピ6.11 カラム値のサブ文字列を使ったソート
        レシピ6.12 固定長サブ文字列によるソート
        レシピ6.13 可変長サブ文字列によるソート
        レシピ6.14 ドメイン順でホスト名をソート
        レシピ6.15 数字の順序でドットで4つに区切られたIPアドレスをソート
        レシピ6.16 ソート順の最初と最後に対する特有な浮動小数点
        レシピ6.17 ユーザ定義の順序で行うソート
        レシピ6.18 ENUM値のソート

7章 サマリの生成
        レシピ7.0 はじめに
        レシピ7.1 COUNT()によるサマリ
        レシピ7.2 MIN()とMAX()によるサマリ
        レシピ7.3 SUM()とAVG()によるサマリ
        レシピ7.4 重複を省くためにDISTINCTを使用
        レシピ7.5 最小値や最大値に関連する値を見つける
        レシピ7.6 MIN()とMAX()でケースセンシティブを制御
        レシピ7.7 サマリをサブグループに分ける
        レシピ7.8 サマリとNULL値
        レシピ7.9 ある特性を備えたグループだけの選択
        レシピ7.10 値がユニークかどうかを決定する
        レシピ7.11 式の結果によるグループ化
        レシピ7.12 カテゴリされていないデータのカテゴリ分け
        レシピ7.13 サマリの表示順序の制御
        レシピ7.14 最大または最小のサマリ値の検出
        レシピ7.15 日付に基づくサマリ
        レシピ7.16 グループごとのサマリ値と全体のサマリ値の同時操作
        レシピ7.17 サマリとリストを含むレポートの作成

8章 ALTER TABLEを使って、テーブルを修正する
        レシピ8.0 はじめに
        レシピ8.1 カラムの削除、追加、位置変更
        レシピ8.2 カラム定義の変更と名前の変更
        レシピ8.3 NULL値とデフォルト値属性に対するALTER TABLEの効果
        レシピ8.4 カラムのデフォルト値の変更
        レシピ8.5 テーブル型の変更
        レシピ8.6 テーブル名の変更
        レシピ8.7 インデックスの追加および削除
        レシピ8.8 インデックスを加えることによって、重複を排除する
        レシピ8.9 ALTER TABLEを使用して、テーブルを正規化する

9章 メタデータの取得と使用
        レシピ9.0 はじめに
        レシピ9.1 クエリに影響される行数の取得
        レシピ9.2 結果セットメタデータの取得
        レシピ9.3 結果セットが存在するかどうかを決定
        レシピ9.4 表示のためのクエリ結果の整形
        レシピ9.5 テーブル構造の情報を得る
        レシピ9.6 ENUMとSETカラム情報の取得
        レシピ9.7 データベースから独立したテーブルの情報を取得する方法
        レシピ9.8 テーブル構造の情報を適用
        レシピ9.9 テーブルとデータベースのリスト
        レシピ9.10 テーブルの存在のテスト
        レシピ9.11 データベースの存在のテスト
        レシピ9.12 サーバのメタデータを取得する
        レシピ9.13 MySQLサーババージョンに適合するアプリケーションを書く
        レシピ9.14 現在のデータベースを割り出す
        レシピ9.15 現在のMySQLユーザを割り出す
        レシピ9.16 MySQLサーバをモニタする
        レシピ9.17 サーバがサポートしているテーブル型を知る

10章 データのインポートとエクスポート
        10.0 はじめに
        10.1 LOAD DATAとmysqlimportによるデータのインポート
        10.2 データファイルのロケーションの指定
        10.3 データファイルのフォーマットの指定
        10.4 引用符と特殊文字の処理
        10.5 CSVファイルのインポート
        10.6 異なるオペレーティングシステムからのファイルの読み出し
        10.7 重複したインデックス値の処理
        10.8 LOAD DATAを使用して、もっと情報を引き出す
        10.9 LOAD DATAですべてが分かるわけではない
        10.10 データファイル行のスキップ
        10.11 入力カラムの順序の指定
        10.12 データファイルカラムのスキップ
        10.13 MySQLのクエリ結果のエクスポート
        10.14 ローデータとしてテーブルを書き込む
        10.15 SQLフォーマットでテーブルの内容あるいは定義をエクスポート
        10.16 テーブルあるいはデータベースを他のサーバにコピー
        10.17 エクスポートプログラムを書く
        10.18 あるフォーマットから別のフォーマットへのデータファイルの変換
        10.19 データファイルカラムの抜粋と再配置
        10.20 データの検証と変換
        10.21 直接比較による検証
        10.22 パターンマッチングによる検証
        10.23 パターンを使用して、いろいろなコンテンツ型に一致させる
        10.24 パターンを使用して、数値に一致させる
        10.25 パターンを使用して、日付や時刻に一致させる
        10.26 パターンを使用して、値をEmailアドレスやURLに一致させる
        10.27 テーブルメタデータを使用した検証
        10.28 照合テーブルを使用した検証
        10.29 2桁の年号から4桁の年号形式への変換
        10.30 日付あるいは時刻のサブパートに関する正当性の確認
        10.31 日付処理ユーティリティを書く
        10.32 欠落した要素のある日付の使用
        10.33 SQLを使用した日付の変換の実行
        10.34 日付変換用に一時テーブルを使用する
        10.35 NULL値の扱い
        10.36 データファイルからテーブル構造を推測
        10.37 LOAD DATA診断ユーティリティ
        10.38 MySQLとMicrosoft Access間でのデータ交換
        10.39 MySQLとMicrosoft Excel間でのデータ交換
        10.40 MySQLとFileMaker Pro間でのデータ交換
        10.41 クエリ結果をXMLとしてエクスポート
        10.42 XMLをMySQLにインポートする
        10.42 エピローグ

索 引

Feedback

皆さんのご意見をお聞かせください。ご購入いただいた書籍やオライリー・ジャパンへのご感想やご意見、ご提案などをお聞かせください。より良い書籍づくりやサービス改良のための参考にさせていただきます。
[feedbackページへ]