MySQLに関するkobakのブックマーク (6)
-
MySQLはとても気ぃつかい屋さんである。我々が投げる多少あいまいな指示も頑張って解釈し、なんとか文句を言わずに実行してみようと挑戦してみてくれる。 今日はそんなMySQLがケナゲに解釈してくれる自動変換について紹介しようと思う。この自動変換、ケナゲなMySQLの奥ゆかしさ故、出した指示と異なる動作をされたことに気がつかないことがある。ここで紹介する6つの自動変換をしっかり脳ミソにたたき込んでおけば、無用なトラブルにハマる時間も減るかもしれない。1.[数値] 範囲外の数値は頭を押さえつけられる intやsmallint、bigintなどの数値型には、扱える範囲が決まっている。例えばint型なら最大21億ちょっとだ︵unsignedの場合は43億弱︶。これより大きい数字を登録するよう指示を出すとMySQLはどうするか。そう、頑張って入れられるところまで入れてくれるのである。﹁入れられるとこ
-
ORM やウェブアプリケーション関連のライブラリなどのテストケースを書くにあたっては、 RDBMS へのアクセスが必要になります。しかし、SQLite のようなスタンドアローンのデータベースと比較すると、サーバ型データベースである MySQL に接続してテストを書くのは、既存の MySQL の権限設定やデータベース名を気にする必要があったりと、いろいろ不便です。そこで、MySQL のインスタンスをテンポラリディレクトリに自動生成し、テストが終わったら削除してくれる Perl モジュール Test::mysqldを書きました。こんな感じで使います。 use DBI; use Test::mysqld; use Test::More; my $mysqld = Test::mysqld->new( my_cnf => { 'skip-networking' => '' }, # TCP接続を
-
はじめに 本連載では、PHPまたはプログラミング初心者の方を対象に、PHPを用いたWebアプリケーションの作成方法を説明していきます。今回は、データベースとSQLに関して、﹁おすすめレストラン一覧を閲覧できるWebサイトを制作する場合﹂を例にして、説明をしていきます。 対象読者 プログラミングが初めてでこれから学習する予定の方 プログラミングの経験はあるがPHPを初めて学習する方 この記事の内容 はじめに 対象読者 動作確認環境 データベースとは何か・・・データベースはどんな役割? データベース操作の基礎・・・データベース言語﹁SQL﹂とは SQL基礎‥テーブルの作成・・・CREATE文を使ってみましょう SQL基礎‥レコード追加・・・INSERT文を使ってみましょう SQL基礎‥レコード検索・・・SELECT文を使ってみましょう SQL基礎‥レコード更新・・・UPDATE文を使ってみまし
-
ちょっとキャッチ−なタイトルをつけてしまったが、今日は独断と偏見でMySQLを高速化する方法を10個紹介しよう。MySQLサーバをチューニングするときや初期導入する場合などに参考にしてもらいたい。 1. バッファを増やす、または減らす チューニングの基本中の基本であるが、適切なバッファサイズを設定することはパフォーマンスチューニングの要である。主なバッファは次の通り。 innodb_buffer_pool_size・・・InnoDBだけを利用する場合は空きメモリの7〜8割程度を割り当てる最も重要なバッファである。余談だが、実際にはここで割り当てた値の5〜10%ぐらいを多めにメモリを使うので注意が必要だ。 key_buffer_size・・・MyISAMだけを利用する場合は、空きメモリの3割程度を割り当てるといい。残りはファイルシステムのキャッシュ用に残しておこう。 sort_buffer_
-
前回MySQLの基礎︵概要編︶‥プログラミングの基礎知識の続き。 クエリの構文 以下の8つを覚えれば、MySQLはほぼ使いこなせる。 構文 働き CREATE データベースやテーブルをつくるALTERテーブルの構造を修正する INSERT テーブルにデータ︵レコード︶を追加する SELECT テーブルからレコードを選び出す UPDATE テーブルの内容を修正する DELETE レコードを削除する DROP テーブルやデータベースを削除する LOAD DATA INFILE ファイルからデータを一気に取り込む フィールドに入れるべき値の型︵データ型︶ データ型はあらかじめ定義する。 データ型︵データの種類のこと。4種類ある。︶ 文字型 数値型 日付・時刻型 リスト型 よく使うのは、 文字型‥char, text数値型‥int char(文字数) character︵文字︶の略。()内に
-
1