2012/04/24

【Linux】コマンドで.htpasswdを生成したりする

ということで、htpasswdのメモ。

普段「.htpasswd」ファイルは、ファイルを作成して
アップロードなり、シンクなりすると思います。

でも今日コマンドでちゃっちゃと作れると聞いたのでメモ

・「.htpasswd」の作成
%htpasswd -bc .htpasswd user01 password
これで、カレントディレクトリに「user01」というユーザで「password」という パスワードのユーザが作成されます。 ・ユーザの追加
%htpasswd -b .htpasswd user02 password
これで、カレントディレクトリにある「.htpasswd」に 「user02」というユーザで「password」というパスワードのユーザが追加されます。 「bオプション」は、ユーザのほかにパスワードを指定して追加します。 「cオプション」は新規にファイルを作成します。 終わり

2012/04/21

【MySQL】SELECTで取得した値がNULL値だった場合に別の値として取得する

今のプロジェクトで使ったのでメモ

現在API担当としてシステム開発を行なっているのですが、返却値として「NULL」を
返却せずに「0」を返却して欲しいという要望があったので、
クエリで何とかならないかと思ってCOALESCE関数という関数を見つけました。


関数の内容としては
リストの最初の非 NULL 値を戻すか、非 NULL 値がない場合は NULL を戻します。
と言うことが書いてありました。 翻訳がアレなのでちょっとわかりにくいと思います。 つまり、引数は可変長引数となっており、いくつでも(?)引数を指定することが可能です。 その上で、順番に指定されている引数をチェックしていき、「NULL」でない値を返却します。 「NULL」しか無かった場合は「NULL」を返却します。 例)
mysql> SELECT COALESCE(NULL,1); -> 1 mysql> SELECT COALESCE(NULL,NULL,NULL); -> NULL
例えば下記のようなテーブルがあったとします。
+---------+--------+-------+ | user_id | name | value | +---------+--------+-------+ | 1 | user01 | 5 | | 2 | user02 | NULL | +---------+--------+-------+
上記のテーブルを次のSELECTで取得した場合
SELECT 
  * 
FROM 
  `user`
+---------+--------+-------+ | user_id | name | value | +---------+--------+-------+ | 1 | user01 | 5 | | 2 | user02 | NULL | +---------+--------+-------+
「value」カラムにNULLが入ったまま返却されてきます。 次に上記のCOALESCE関数を使用してSELECTを実行します。
SELECT 
  `user`.`user_id`, 
  `user`.`name`, 
  COALESCE(`user`.`value`, 0) AS `value` 
FROM 
  `user`
+---------+--------+-------+ | user_id | name | value | +---------+--------+-------+ | 1 | user01 | 5 | | 2 | user02 | 0 | +---------+--------+-------+
という風に先程「NULL」が入っていたところが「0」として返却されてきます。 本来このような使い方をする関数では無いのかもしれないですが、この関数のお陰で 楽ができました。 終わり

2012/04/09

【雑記】4月ということで

さくらの写真を撮ってみました。

これは会社の近くのアニメイトの前のところです。

おわり