MySQL 既存のテーブルにあるカラムにdefault設定を追加・削除する MySQLのデフォルト設定の追加・削除は以下のように行います。デフォルト設定の追加デフォルト設定を削除/ 2013.08.17 MySQL
MySQL ERROR 1005 (HY000): Can’t create table ‘matome.site’ (errno: 121) ひとつのテーブルのidを別の二つのテーブルからCONSTRAINTでくくりつけようとするとこのエラーがでる。ここで指定している"mtm_category"という名前がかぶっていたためだった。これを参照するテーブルでそれぞれ違う名前にしてあげ... 2013.07.31 MySQL
MySQL あるフィールドのユニーク数(種類数)を出す方法 たとえば、アクセス解析で、全てのアクセスのログがあり、そのログから、各ページのユニークユーザ数とPV数を出したい場合があります。各ページごとのPV数は以下のクエリで取得できますが、UU数が取得できません。そこで登場するのがDISTINCT文... 2013.06.18 MySQL
MySQL “show”という名前のテーブルは作れない showというテーブルを作ろうとしてましたが、失敗。showという名前がいけないらしく、テーブル名だけ変えたらうまくいきました。以下に予約語があり、showも思いっきり入ってました。。。/ 2013.05.21 MySQL
MySQL phpMyAdminでWordPressの内容を一括置換したい! phpMyAdminでWordPressの内容を一括置換してみます。文字列置換なので、replace()関数を使用します。また、WordPressの本文は"XXX_posts"テーブルの"posts_content"テーブルになります。(た... 2013.05.17 MySQL
MySQL my.cnfの”datadir”で指定していた、mysqlのというディレクトリを 間違って移動してしまった。 mysqlのデータディレクトリを一旦移動すると、戻してもデータベースが全くない状態になってしまった。そういう時は、いったんMySQLデーモンを再起動します。そうすると再びdatadirで設定されたディレクトリを読みに行き、データベースが読み... 2013.05.16 MySQL
MySQL あるテーブルのあるフィールドの値が別のテーブルのあるフィールドに一致するものが ないものだけ抜き出す方法。 例えば、毎日の売り上げを記録した"days"というテーブルと、祝日をの情報を持ったテーブル"holiday"があるとします。ここで、祝日以外の日の売り上げ平均を見たい場合、以下のようにすることで抽出できます。/ 2013.05.15 MySQL
MySQL phpMyAdminでMySQLデータベースを簡単に操作する phpMyAdminをインストールすれば、MySQLが劇的に扱いやすくなります。テーブル内のデータ一覧表示や、データの修正、テーブルの構造の変更などがブラウザ上から簡単に行えます。以下のサイトにアクセスし「Download4.0.0」をクリ... 2013.05.14 MySQL
MySQL 既存のカラムにINDEXを追加する。 テーブル内のカラムに対しINDEXを設定すると、そのカラムをキーに検索を行った時のパフォーマンスの向上がはかれます。既存のカラムにこのINDEXを設定するには以下のようにALTERTABLEを使用します。実施例を以下に記載します。INDEX... 2013.05.08 MySQL
MySQL 「Cannot add or update a child row: a foreign key constraint fails」ってでる。 外部キーを持った表にレコードを挿入しようとしたら、「Cannotaddorupdateachildrow:aforeignkeyconstraintfails」と、でてしまった。ググってみると、存在しない親の外部キーを挿入しようとすると出る... 2013.04.02 MySQL
MySQL 「ERROR 1030 (HY000): Got error 28 from storage engine」 いきなり以下のエラーがでるようになった。showコマンドで発生したので、なのでなかなか気づけませんでしたが、どうやらMySQLサーバの容量がなかったのが原因だったようです。サーバの容量を空けたらエラーはなくなりました。/ 2013.03.25 MySQL
MySQL テーブルの中身を空にする テーブルの中身を空にするには、テーブルの中身をすべて削除するか、テーブルを削除して再度作り直すという2通りの方法があります。テーブル内のデータを削除するdeleteにより削除する場合はテーブル内のデータをそれぞれ削除しテーブル自体は依然のま... 2013.03.23 MySQL
MySQL 挿入したレコードのIDを得る MySQLテーブルのフィールドををAUTO_INCREMENTなど、自動的に値を設定するようにしていると、レコード挿入後でないと分からない値があります。その値を知るには、MySQLのLAST_INSERT_ID()関数を使用して最後に挿入し... 2013.03.19 MySQL
MySQL PHPでMySQLにアクセスすると「mysql_query(): supplied argument is not a valid MySQL-Link resource in xxx.php on line xxx」と出る これは、mysqlに接続できていない状態にもかかわらず、mysql_query()などの関数を実行するとでます。mysqlへの接続がうまくいっていないので、ユーザ名やパスワード等が間違っていない確認してみてください。/ 2013.02.28 MySQLPHP
MySQL 既存のテーブルにあるカラムの名前を変更する 以下の構文でカラム(フィールド)の名前を変えることができます。ただし、同時に型も指定する必要があり、これを正しく指定しておかないと名前だけでなく型も変わってしまうので注意が必要です!/ 2013.02.24 MySQL
MySQL 挿入したレコードのIDを取得するには? 直前に挿入したレコードのIDを取得する関数「LAST_INSERT_ID()」を使います。PHPではたとえば以下のように使います。これで、$idに直前にinsertしたレコードのidが入ります。/ 2013.02.22 MySQL
MySQL テーブルの結合2(等価結合) 単純結合だと無駄な行がたくさんできてしまいます。そこで登場するのが等価結合で、二つの表について一致している行のみ結合させます。member表に追加で各メンバーの出身地の人口(population)を表示させるにさせる例を以下に示します。/ 2013.02.18 MySQL
MySQL テーブルの結合1(単純結合) 結合には以下のように種類がいくつかあります。単純結合等価結合非等価結合外部結合再起結合今回はこの中で、単純結合のご紹介をします。まず、以下の二つのテーブルがあるとします。これら二つを単純結合すると「x」の行数のテーブルが出来上がります。テー... 2013.02.15 MySQL