MySQL eucのとき、SET NAMES ujis ってダメだったような。

2010年10月04日(月)

MySQLの文字コードがeucの場合

SET NAMES ujis

ってやってますが、これ絶対よくない気がします。
詳しくないので、とりあえず動くコードを使ってしまうのですが。

MySQL WEEKDAY?で曜日を数値で返す

2010年06月10日(木)

MySQL関数のWEEKDAYは曜日の数字を返すそうです。

SELECT  DATE_FORMAT(date,'%c月%e日') as f_date,WEEKDAY(date) as youbi_num FROM item

そんでもって

$youbi_array=array("日","月","火","水","木","金","土","日");
$youbi_str=$youbi_array[$youbi_num];
$date={$f_date}({$youbi_str});

ですか?
もっといい方法があると思います。

PHP/MySQL implodeでクエリを作成

2010年06月05日(土)

配列をimplodeで分解してIN()でクエリを作るとき、
文字列の場合困るなあと思ってました。
これでダメでしょうかね。
ちゃんとしたやり方がありそうです。

$list_array=array(“red”,”blue”,”green”);
$girls_path_list=implode($list_array,”‘,’”);
$query=”SELECT girls_name,tall,bust,cup,waist,hip FROM girls WHERE girls_path IN (‘{$girls_path_list}’)”;
print $query;

SQL 関数を使うべきなのではと最近思います。

2010年06月02日(水)

あるって知っておけば、調べて使えます。
発想をあまりしないので。
取得した後に処理することが多いのでいけませんねえ。

concat() 文字列結合
lpad() 左文字埋め
rpad() 右文字埋め
ltrim() rtrim() 左右空白削除
length() 文字列の長さ
to_number() 文字列を数値に変換

とりあえず使えそうなものだけメモってみました。

MySQL INを使いなさいよオレ

2010年05月29日(土)

ORとかANDとか位にメジャーなヤツなハズ。
でもいつも忘れがち。
なのでメモします。

SELECT title FROM book WHERE id IN(2,5)

PHP エラー表示htaccess

2009年12月11日(金)

サーバによって、たまにphpのエラーがでないので
htaccessでだすときです。

.htaccess

php_flag display_errors 'On'

一生懸命error_reporting()でガチャガチャやってましたら
まず display_errors をOnにしないといけませんでした。

SQLiteManager 設定用データベースが読み込み専用

2009年12月11日(金)

初めてかもしれませんが
SQLiteManager設置時に

設定用データベースが読込み専用になっています。
SQLiteManagerのいくつかの機能は正しく動作しません。

とでまして、おそらく
include/config3.dbとinclude/config.dbの属性を”666″に変更すると消えました。

いいのかしら。

SQL ビュー

2009年11月02日(月)

これもまた重要そう。
スルーしてました。
MySQL5.1からだそうです。だからでしょうか。

【参考】MySQLの使い方
http://www.dbonline.jp/mysql/view/index.html

【リファレンス】
http://dev.mysql.com/doc/refman/5.1/ja/views.html

SQL データタイプ

2009年11月02日(月)

たとえば、SMALLINTだとかMEDIUMINTだとかの違いを
適当に考えてたのですが、やはりちゃんと把握しておくべきだと。

あと、数値型にみられるsigned/unsignedは符号のことで
おそらくマイナス記号だと。
なので、unsignedのフィールドは正の値のみになる。

こんなことを今頃メモるとは・・・

【参考】
http://dev.mysql.com/doc/refman/5.1/ja/data-types.html

SQL 変数

2009年11月02日(月)

変数を指定できるらしい。
持ってる書籍ではみたことがありませんでした。

SET @t1=0, @t2=0, @t3=0;
SELECT @t1:=(@t2:=1)+@t3:=4,@t1,@t2,@t3;
+----------------------+------+------+------+
| @t1:=(@t2:=1)+@t3:=4 | @t1  | @t2  | @t3  |
+----------------------+------+------+------+
|                    5 |    5 |    1 |    4 |
+----------------------+------+------+------+

【参考】
http://dev.mysql.com/doc/refman/5.1/ja/user-variables.html