20121227

[perl]PostgreSQLへファイルをCOPY FROMする

はまったので。

普通に



したら、ファイル読み込みエラー発生。

標準入力 STDINで回避。

#---以下参考

use DBI;
use DBD::Pg;

#DBへ接続
my $dbh = DBI->connect("dbi:Pg:dbname=【データベース名】;host=【ホスト名またはIPアドレス】","【ユーザ名】","【パスワード】") or die 'ERROR';
#>パスワードがなければ省略可

#COPY SQLを実行
my $Fg = $dbh->do("copy 【テーブル名】(【項目1】,【項目2】) from STDIN using delimiters ','");
#>項目は、ファイル内容に合わせて設定する
#>using delimitersは、ファイルのデータ型に合わせて設定する
#>using delimitersを省略した場合、タブ区切りのデータが初期値で設定されている

#COPY SQL実行 成功判断
if ( $? != 0 ){
#失敗
die 'ERROR';
} else {
#成功
#インポートするファイルを読込む
open(fh ,">","【ファイルパス・名】");

while(){
#念のため
chomp($_);
#一行づつ標準入力
$dbh->func( $_."n",'putline' );
#>putlineはDBDがインストールされていない場合利用できない
}

#終了行を出力(決まりごと)
$dbh->func( "\\.\n",'putline' );

#COPY終了
$dbh->func( 'endcopy' );

#ファイルを閉じる
close(fh);

}
#DBへの接続を切断
$dbh->disconnect;

[perl]DBI,DBDモジュールインストール確認コマンド(Linux)

perl -MDBD::Pg -e ''
perl -MDBI -e ''

20121103

20121102

Bluetoothの感度

電池が半分以下になると、送受信ともに感度が悪い気がする。。

20121101

また買ってしまった。。

Bluetoothヘッドセット。。

これで4つ目。

でも、2年前に比べてステレオタイプが安くなった。

前は商品自体が無かったし。

今回買ったのは、smart ways ってところのステレオタイプヘッドフォン。

ヤマダ電機で2000円で売ってたから即買いしてもうた。

かっこ悪くて、音は良くないけど、音切れが少ないんだこれが。
こないだ買ったバッファローのは、3000円して、音切れがひどくて全然使えなかったから、全然まし。

しかも小さくてポケットに入れて置いても違和感がない。

しばらく使ってみよう。

20121022

シャルダン展にいってきた

三菱一号館美術館始めて行った。
できたばかりみたいで綺麗だった。
オープンテラスのカフェやレストランに囲まれた中庭は、雰囲気が良くて落ち着く。

20121015

NOVO7 Elf2 使ってて電源が急に落ちる。。

主に動画閲覧用に使ってるんだけど、ブチって急に電源が落ちるんだよね。

電池マックスから大体4~5時間ぐらい連続使用してると落ちる。

どうも電池がないらしいんだけど、前触れもなく、表示も半分ぐらいの消費に見えるし、ビビる。

OSの問題か個体の問題かは様子見。

20121009

PHP CSVダウンロードの怪

PHPでサーバ上にCSVファイルを作成し、ダウンロードすると先頭に文字化けした文字がついてしまい、はまったのでメモ。

ダウンロードしてファイルをExcel閲覧すると、最初の日付データの書式がおかしい。
正確に言うと、次の行の日付書式は「YYYY/MM/DD」なのに、先頭が「YYYY-MM-DD」となっている。
作成データ的にはDBの書式なので「YYYY-MM-DD」が正しいのだが、どうもExcelの認識として、日付ではなく文字列として認識して表示してるようだ。

何で?とおもってテキストエディタで閲覧してみたら、先頭に「?」がくっついている。
何だ?とおもってCSVデータ作成過程を見直してもおかしなところは見当たらない。
作成したサーバ上のCSVを見ても「?」は無い。

PHPの設定はUTF-8、ダウンロードページもUTF-8、ファイルもUTF-8。
どうしても取れない。

調べてみたら、「Byte Order Mark」通称BOM(ボム)って物らしい。
ボムはエンディアン(データ順の指定)のためにくっついているらしい。

さて、どうやって取ったらいいの?

ボムはソースファイルに巣食っているらしく、PHPのソースファイルを全て「UTF-8N」で保存しなおしたら、消えた。。
「UTF-8N」ってのは、UTF-8のボム無って意味らしい。(テキストエディタによって違うと思います。)

知らんがな。

20121005

地震雲?

綺麗な夕陽。

夜・・・

夜はいいなぁぁ。

気持ちいい夜ってあるよね。

20121003

net-snmp インストール

環境:CentOS 5.5 / x64
条件:検証環境のためインターネットへの接続不可(yum不可)。CDROMの利用不可。

依存関係がひどくて苦労したのでメモを残す。
Linuxを理解していないから苦労するんだろうけど。。。

<net-snmpって>
LinuxのサーバでSNMPを使えるようにするパッケージだ。

<必要なパッケージ>
--- net-snmp 5.3.2.2.1 CentOS5.8/x64
net-snmp-libs-5.3.2.2-17.el5.x86_6
net-snmp-devel-5.3.2.2-17.el5.x86_64.rpm
net-snmp-5.3.2.2-17.el5.x86_64.rpm
net-snmp-perl-5.3.2.2-17.el5.x86_64.rpm
net-snmp-utils-5.3.2.2-17.el5.x86_64.rpm
--- その他
beecrypt-4.1.2-10.1.1.x86_64.rpm
beecrypt-devel-4.1.2-10.1.1.x86_64
elfutils-devel-0.137-3.el5.x86_64.rpm
elfutils-devel-static-0.137-3.el5.x86_64.rpm
lm_sensors-devel-2.10.7-9.el5.x86_64.rpm
lm_sensors-2.10.7-9.el5.x86_64.rpm

<ダウンロードサイト>
http://rpmfind.net/linux/RPM/index.html

<インストール順>
1 # rpm -ivh net-snmp-libs-5.3.2.2-17.el5.x86_6
2 # rpm -ivh lm_sensors-2.10.7-9.el5.x86_64.rpm
3 # rpm -ivh net-snmp-5.3.2.2-17.el5.x86_64.rpm
4 # rpm -ivh net-snmp-perl-5.3.2.2-17.el5.x86_64.rpm
5 # rpm -ivh net-snmp-utils-5.3.2.2-17.el5.x86_64.rpm
6 # rpm -ivh beecrypt-4.1.2-10.1.1.x86_64.rpm
7 # rpm -ivh beecrypt-devel-4.1.2-10.1.1.x86_64
8 # rpm -ivh elfutils-devel-0.137-3.el5.x86_64.rpm elfutils-devel-static-0.137-3.el5.x86_64.rpm

特にこれ。相互依存関係だから、ちくしょうっていった。

9 # rpm -ivh lm_sensors-devel-2.10.7-9.el5.x86_64.rpm
10# rpm -ivh net-snmp-devel-5.3.2.2-17.el5.x86_64.rpm

20120928

phplot

X軸ラベル表示ではまったのでメモ。
PHP+Postgre で timestamp型の値をX値としてエリアグラフ化した際、どうもX軸ラベル表示が日付で表示されない。

ポイントは、以下のデータプロット仕様が理解できていなかったことと、表示ラベルには2種類あること、アンドPHPのデータ変換。
この3つのポイントでうまく表示が出来た。

参考資料が英語ばかりで時間が掛かった。。

#仕様
・データのプロット //基本は以下の2つ
+ text-data
  - array([label],[y1],[y2]…);

+ data-data
  - array([label],[x],[y1],[y2]…);

#設定例
・SetDataType
- ('data-data')

・SetXLabelType //X軸ラベルフォーマットタイプ
- ('time','%m/%d %H:%M') //日付日時型

・SetXDataLabelPos //X軸データ値表示設定
- ('none') //非表示

・SetXTickLabelPos //X軸ラベル表示設定
- ('plotdown') //軸下へ表示

・SetXTickIncrement //X軸ラベル表示間隔設定
- ('20000') //秒単位

・X軸グラフデータ
- postgres timestamp 型 -> php strtotime(); 変換

・データ設定例
- $graphData[1] = array(strtotime('2012/09/25 10:10:10'),strtotime('2012/09/25 10:10:10'),22,33);

20120912

[xampp portable]phpからpostgresqlに接続したい

PHPの開発環境として、USBにxamppをインストールしてPostgreSQLサーバへ接続させたかった。
が。。。
PHPのPostgreSQL関数が動作しない。

原因は、2つ。

・「php.ini」にPostgreSQLを利用する設定がされていないから
・起動時に「libpq.dll」が読込まれていないから

まず、「php.ini」にPostgreSQLを利用する設定をする。
以下の設定値の「;」コメントアウトを削除。

---
;extension=php_pgsql.dll

extension=php_pgsql.dll
---

「libpq.dll」は、「/xampp/php」にあるのだけども、読込まないらしい。

解決法を探したら、「/xampp/apache/httpd.conf」に以下の設定を追加して、強制的に読込ませる。

---
LoadFile "/php/libpq.dll"
---

以上で無事動いた。

20120910

アベンジャーズ

評価:★★★★☆

超久々に映画館に行ったw

いやあ、面白い。ってか笑えるww
こんな感じのお祭り映画が大好きだし、ヒーロー大集合みたいなのもワクワクするし、最高でした。

真面目な方には合わないかも。出てくるみんながバカすぎて。

これだけのヒーロー使ってたら、ストーリーのまとまりがなくなるのは当たり前だと思うから、特にその点は気にせず。
ヒーロー達のやりとりを楽しんで見る映画だね。
コントw

ハルク最高!

ハルクになる前はネガすぎてイライラしたけど。

NOVO7 Elf2 を使って

使って見た感じを書いてこうと思うんですが、使ってて気づいちゃいました。

Bluetoothがついてないw

キーボード使おうかなって思って、設定見て見たら、設定がない。

まあ、安いしいいや。

さて、使ってみて。

箱開けて、gmailアカウント設定して、アプリとかすでにいろいろインストールされてるからいれることもなく、すぐ使える。

・ファイラー
・動画プレイヤー
・フラッシュプレイヤー
・タスクマネージャ
・simeji

こんだけインストールされるのはありがたい。

ただなんとなく誤タッチが多い。
すごいずれるわけじゃないけど、一個上のボタン押しちゃう的な、感覚とちょっとしたズレがあるんだな。
高いどろタブレット使ったことがないから、機器の問題かOSの問題かは不明。

その他については、何も問題ない。早いし。

電池のもちも、半日動画みて50%消費ぐらいでもちがよい。
ニコニコ動画がandroid4対応したらいうことなす。



20120908

これははまった

postgreのアップデートではまった。

OS:CentOS5.5
PostgreSQL8.3 → 9.1.5

rpmでアンインストール。
初心者みたいなものだから、これでOKだと思ってた。

次、rpmで9.1.5をインストール。

あれ、サービスが起動しない。。
1はまり。

エラーが、「すでにプロセス起動してるぜ。」だって。

プロセス見てみると、postmasterが複数起動してやがる。

全てkill。

起動した。
何これ。
まあいいかと思って、psqlを起動しようとすると。。。

「クライアントエンコードがおかしいよ。」ってでる。
2はまり。

よく見ると、/usr/local/pgsqlは残ってる。
知ってた。けどスルーした。コレがまずかった。

もともといるpostgresユーザのホームディレクトリが、/usr/local/pgsqlになってた。

usermod -d /var/lib/pgsql postgres

で解決。

まとめると、アンインストールの手順は、

1.パッケージのアンインストール
2.サービスの削除
3.postgresのホームディレクトリ変更

となる。(もともとpostgreでDBが構築されていた場合。まっさらな状態だったらはまらなかったので。)
きをつけろ。

20120907

【連載】コンピュータの未来:そして・・・

人の第二の脳(ストレージ)としてスマートデバイスが手放せなくなる。

ここからは、自分が思うなってほしい未来。

住民基本台帳が元となり、各インターネットサービスへのシングルサインオンが可能となる。
インターネット上にて、個人が一意に特定されるようになり、インターネット上には、仮想のもう一人の自分が完成する。
今でも、仮想の自分は作れるが(Facebook等)、一意に特定する保証がない。
一意に特定するインフラの構築が肝。

一人一台の通信デバイスが当たり前となり、物理的距離が無意味となって、場所の概念が仮想世界に置き換わる。

最終的には、国も無意味となって世界が統一されるかもしれない。

NOVO7 Elf2 ガチやべえ

買っちゃいました。

だってやすぅいんだもん!

デユアルコアで1万以下。
国産どろタブなんてかってらんねぇ。

国産の旨味なし。

使って見て、動きは軽快だし、ディスプレイの写りも不満ないし、安っぽくないし、文句なし。

こりゃ国産メーカー潰れるわ。

20120904

【連載】コンピュータの未来:いまは・・・

いつでも、どこでも必要な時に情報を取り出せるよう、モビリティの方向へ向かってる。

ただ、タブレットは廃れると思う。

正確にいうと、今は使い方が定まっていないから、方向性が定まれば廃れずにすむはず。

10インチ代のタブレットを外で歩きながら、立ちながら操作するのはナンセンスだと思う。

今のスペック、価格であれば、家庭用として一人一台持つのが本当の使い方だと思う。

なので、きっと7インチとか出てるけど、廃れるね。

10インチ代のタブレットが、家庭用で流行る。はず。1万円ぐらいで。

【連載】コンピュータの未来:ちょっとだけ具体的に・・・

勝手な結論を出しましたが、ちょこっとだけ具体的に考えてみる。

言わずとしれたiPhone。

・手軽
当時、UMPCが流行りだし、低価格のPCが出ていたが、割賦のおかげで、買いやすい価格だった。
まあ、普通の新品携帯電話と変わらない値段ですよね。

・簡単
私も使ってますが、iPhoneの使い易さは秀逸だと思います。
無駄を抑え、人が利用するツボを抑えていますね。
特に文字入力。
ソフトキーとかないわww
だった私が、タッチ具合と打ちやすさに感銘しました。(3Gはちょっとフリーズしてたけど)
ワンタッチダイレクトのアイコンとか。
いうなれば、楽々フォン見たいでしょ。
難しさを感じさせずに、いろいろ使えちゃう。最高。

・最低限
電話する、メールする、ブラウジング、写真撮る、動画見る、音楽を聞く。

ぶっちゃけ最低限。

でも、PCあっても、利用する率が高いのは、挙げた機能なわけで。
十分。


だから、流行ってる。

Androidもほぼ一緒。
ちょっと複雑で、ちょっと自由度が高いだけ。

20120829

【連載】コンピュータの未来:なぜスマホがはやっている・・・

なぜスマホなのか。

難しいですね。

個人的に、

・手軽
・簡単
・最低限

だと思ってます。

以下の図の考えで、2軸に分類してみると、スマホってとてもマイルドなのでしょう。

要は、情報リテラシーが向上してきた人たちの要望にマッチしているから、流行ったんです。きっと。


【連載】コンピュータの未来:これまで・・・

昨今、スマホ、スマホと騒がれているので、勝手に、根拠無く、コンピュータに関する自分の考察を書いてみようと思う。

インターネットはPC。
電話、メールは携帯電話。
ゲームはプレステ。
テレビ、デジカメ・・・etc。

っていう時代があり

そして、

2008年7月 iPhone 3G発売
2009年4月 Android 1.5発売

オールインワン汎用機。略してスマホ登場。

それまでも、windowsモバイルとか、nokiaとかありましたが、スマホの仲間には入れてもらえなかったようです。

なんでこんなにひろまったんでしょうか?

20120815

gmail

かゆいところに手が届かないと思っていたら、未読メールって「is:unread」で検索できたんや。。