mysql

カラムにAUTO_INCREMENT属性を追加する

mysql> DESC type; +-------+--------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+--------------+------+-----+---------+-------+ | id | int(11) | NO | PRI | NULL | | | type | varchar(255) | …

MySQLの文字コードを指定する

Server charactersetとDb charactersetの文字コードを変更する Server charactersetとDb charactersetがlatin1になってるのを変更したいときは、 /etc/mysql/my.cnfを編集する。ubuntu12.04でMySQL5.5。 [mysqld] -中略- character-set-server=utf8そのあと…

mysqlで文字列の置き換え

こんな感じになる。 UPDATE テーブル名 SET カラム名 = REPLACE(カラム名,'#',',');この場合はカラムに含まれる#を,に置き換える。 知ってれば一行だけど、 知らなかったらSELECTで取ってきた文字列を置き換えてUPDATEするプログラムを書いてた。 これは便利…

プライマリーキーとユニークキーの違い

テーブルを作るときは大体プライマリーキーを設定してテーブルを作るんだけど、 そういえばユニークキーというのもあったよなと思って調べてみた。 何が違うんだろうか。

フィールドを指定してデータをコピーする

前にMySQLでテーブルをコピーする - it-boyの日記って内容を書いたけど、 これってフィールド指定もできるよねとさっき思った! INSERT INTO copy_table SELECT * FROM origin_table WHERE height = '123';こうすればorigin_tableのheightカラムが123のもの…

MySQLでテーブルをコピーする

MySQLのテーブルのコピーってこんなに簡単だったのね! CREATE TABLE copy_table LIKE origin_table; INSERT INTO copy_table SELECT * FROM origin_table;上記と同じことをするために、 これまでどのように時間を無駄にしてきたかを語ると、 phpMyAdminでデ…

phpからmysqlのWHERE句でクエリを送っても返り値がない

例えば以下のようなクエリを送る。 SELECT shopname from info WHERE shopname = '任意の文字列'shopnameデータベースのinfoテーブルのshopnameカラム内の指定したデータを取り出すとき。 そのとき、任意の文字列を日本語文字列にするとなぜか返り値が0にな…

ubuntuにいれたmysqlに新しくデータベースを作る

ずいぶん直球なタイトルです。 そうですSEOです。だいぶ昔にubuntuにmysqlを入れてさわってたんだけどしばらく放置してて久しぶりに使ってみたら新規データベースの作成ができない。 おやっと思い create database データベース名;を連呼してみるがスルーさ…

文字化けた

普段htmlで文字コードはutf-8もしくはUTF-8と書けば普通にいけるのでmysqlからのデータ呼び出しのときの文字コードも上記どちらかでいけるとおもってた。 でも文字化けた。 mysqlをいれたときに文字コードを何にするか?みたいことを聞かれたときにutf8にし…