エレファントカシマシDB 管理人の日記 2016/12/14(水)

一番下へ

『敗北と死に至る道が生活』その4113
 CSVファイルってのがある。エクセルで開く事が多いのだが特定アプリケーションに依存しないテキスト形式のファイルだ。特定アプリケーションに依存すると、それを持っていない人は見る事が出来ないので使ってはいけない。の、割にはPDFはよく使われている。Flashも含めてadobeは嫌いだ。

 CSVファイルは仕様が決まっているようで決まっていない気がする。便利なので昔っから世界中で使われている。要するにカンマ区切りで項目を並べて表形式を再現させるデータファイルなのだが、じゃあ項目自体にカンマを含む場合はどうする?項目の起点と終点に二重引用符をつけよう。じゃぁ項目自体に二重引用符があったらどうする。データとしての二重引用符にはエスケープ文字をつけよう。じゃぁ改行コードを含む場合は?となるので、ローカルルールがある。半角カンマは使わないとか。勝手仕様だ。

 ちなみに項目自体にカンマがあろうが、二重引用符があろうが改行があろうが、お金がなかろうがきちんと動くのが正しいCSVの扱いだ。改行があるとメモ帳で開いたら1行が2行になっているとギャーギャー言うバカがいるが、メモ帳が勝手にそう表示しているだけの話であって、エクセルで開けばセル内改行かもしれない。どんなテキスト形式のファイルだって改行コードがちりばめられた連続のバイナリファイルだ。

 企業同士のEDIなんかも勝手仕様で動いている。でもエクセルにしたって、マイクロソフトの勝手仕様なのでバージョンによって動かないことがある。結構IT業界も曖昧な世界だ。PGやSEは、ヨチヨチ歩きの赤ん坊に手を貸す仕事だと思っている。

 こんなに書いてきてなんだが、今日書きたかったのはそんなことではない。VBAでCSVファイルを RDB とみなし、SQLが発行出来ることを知った。なんだその3文字3文字3文字3文字は。複数ファイルあれば項目で外部結合し、集計関数まで使える。いままでAccessのテーブルやExcelのシートに入れたりしていた。CSVのままいけるならそれが一番いい。「いったん置いといて」みたいなジェスチャーゲームは要らない。でもお高いんでしょう?じゃなくて遅いんでしょう?と思っていたらそこそこ速い。RDBの中身なんて結構こんな感じで動いているのかもしれない。

 今日読みたかったのは、きっとこんな話ではないだろう。白湯でも飲んで寝たまえ。

Tweets by ekdb_admin

ランダム日記


過去
2024-01|02|03|04|05|
2023-01|02|03|04|05|06|07|08|09|10|11|12|
2022-01|02|03|04|05|06|07|08|09|10|11|12|
2021-01|02|03|04|05|06|07|08|09|10|11|12|
2020-01|02|03|04|05|06|07|08|09|10|11|12|
2019-01|02|03|04|05|06|07|08|09|10|11|12|
2018-01|02|03|04|05|06|07|08|09|10|11|12|
2017-01|02|03|04|05|06|07|08|09|10|11|12|
2016-01|02|03|04|05|06|07|08|09|10|11|12|
2015-01|02|03|04|05|06|07|08|09|10|11|12|
2014-01|02|03|04|05|06|07|08|09|10|11|12|
2013-01|02|03|04|05|06|07|08|09|10|11|12|
2012-01|02|03|04|05|06|07|08|09|10|11|12|
2011-01|02|03|04|05|06|07|08|09|10|11|12|
2010-01|02|03|04|05|06|07|08|09|10|11|12|
2009-01|02|03|04|05|06|07|08|09|10|11|12|
2008-01|02|03|04|05|06|07|08|09|10|11|12|
2007-01|02|03|04|05|06|07|08|09|10|11|12|
2006-01|02|03|04|05|06|07|08|09|10|11|12|
2005-01|02|03|04|05|06|07|08|09|10|11|12|
2004-01|02|03|04|05|06|07|08|09|10|11|12|
2003-01|02|03|04|05|06|07|08|09|10|11|12|
2002-04|05|06|07|08|09|10|11|12|

一番上へ