yoshida

SQL*Loaderで取込ファイルの文字エンコードを指定する

サブリーダーの吉田です。

SQL*Loaderは高速にファイルをOracleのDBに取り込めるので、プログラムを組んでファイルを取り込むよりも非常に高速です。2万件のCSVデータでも数秒程度でデータのインポートが完了してしまうほどです。

SQL*Loaderはコントロールファイルに設定値を書き込んでおくことにより設定が可能です。
主にインポート対象のテーブル名、カラム名や、INSERTするカラムに対して固定値や行数など様々な値を設定できます。そのコントロールファイルで

LOAD DATA CHARACTERSET <エンコード名>

と設定し実行することでエンコード名を設定することができます。(※CHARACTERSET以下は省略することもでき、省略された場合にはNLS_LANGに設定された文字コードになる模様

そこの<エンコード名>で設定できる値は
・JA16SJIS
・JA16SJISTILDE
・JA16SJISYEN
・AL16UTF16
・AL32UTF8
・UTF8
・JA16EUC
・JA16EUCTILDE
・JA16EUCYEN
とOracleの文字コードになりますので注意が必要です。UTF-8と書いたら失敗ばかりしていて少し悩みました。Oracleのページにきちんと書いてありました。SQL*Loader制御ファイル・リファレンス

Java等のプログラムから利用する場合には
1.最初に一時テーブルに取り込んでおき、それからプログラムを実行
2.プログラムからbatファイル、コントロールファイルをテンプレートから作成し、実行直前にコミット、SQL*Loader実行後、SQL*Loaderの実行結果の検証をしてプログラムを進める
などの一工夫が必要になります。

山形名物の芋煮を作ってみた

サブリーダーの吉田です。

実家のある山形市では秋になると、様々な集まり(子供会だったり、友達同士だったり)で芋煮会が盛んに行われています。スーパーには芋煮セットも売っており、食材だけでなく、鍋や薪もくれます。鍋だけ返すんですが。

ある意味、山形県人の必須スキルというべき芋煮作りなのに、大学進学で実家を出てきた私は芋煮すら作れない半人前・・・。うーん、これは困ったということで正月に実家に帰った時に作り方をきっちり教わってきました。そして、昨日実家から里芋が届いたので芋煮を作ってみました。
意外に簡単なので我が家直伝の作り方などを書いておきます。

材料の説明から
・里芋(5,6個) 1個を半分~4等分ぐらいに切っておきます
・牛バラ肉(150g)
・こんにゃく(1個) 箸で穴を空けておきます
・長ネギ(1本) 斜め1cmぐらいで切ります
・醤油(後述)
・調理酒(200ccぐらい)
・砂糖(2つまみぐらい)
・お好みでキノコ類。今回はマイタケを入れました。

1)鍋に牛肉を入れ、牛肉が浸るぐらい醤油を入れます。醤油は気持ち多めで良いです。砂糖も入れておきます。
2)鍋に火を入れ、中火で牛肉の色が付くぐらいまでぐつぐつ炒めます。醤油が蒸発しまくりますが、気にしません。その後、牛肉だけバットなどに移します。
3)醤油だけしかない鍋に皮をむいた里芋、手で千切ったこんにゃくとマイタケを入れ、完全に里芋、こんにゃくが隠れるように水を入れて沸騰するまで強火で熱します。
4)沸騰したら調理酒を入れ中火にし、アクを取りながら里芋に串が通るまで待ちます。
5)里芋がOKになったら、取っておいた牛肉と斜め1cmに切った長ネギを投入し、一煮立ちすると完成です。
6)味は醤油と調理酒、砂糖だけなので適当に調節して終わりです。
基本的に大ざっぱな料理なのでこの通り作らないといけないというわけではないでアレンジ可能です。

1月作った時は失敗気味だったのですが、今回は成功と言える出来でした。ポイントは醤油を多めに使うこと。最初に沢山入れてしまうと取り返し付かないので最後の調節で何とかできるのでその辺で。
できあがりの鍋(二日目)の写真を載せておきます。

JavaのWEB系開発の調査

サブリーダーの吉田です。

今日は調査・問い合わせが多く3件もありました。一つは2年以上前のシステムの話でしたので、思い出すのに少し時間がかかりましたが、電話でお客様と話していたこともあり回答をすることができました。こういった場合、設計書を読んだり、ソースを直接読んだりするのですが、このシステムは「こうだったはず」という思いこみで見てしまうと実は別なところで似たような処理をしており、見逃しそうになることも多いです。では、どうすれば思い出せるかというとソースを効率的に読むことが大事です。

主にJavaのWEB系開発の調査
1.DBは無視できないことが多いで、DB設計書をまずは見る。(大抵すぐには思い出せません)
2.いきなり特定の機能、箇所がわかればファイル名を特定する。(でもファイル名がわかりづらい場合も多いです。そういう場合にはjavadoc等を目当てで検索します)
3.「○○テーブルを扱っている箇所を探したい」と影響範囲が多そうな場合にはSQLファイルがテンプレートになっていることが多いでそちらをまずは検索する。SQL文を実行する最小単位のメソッドを割り出し、eclipseで参照検索(Shift+Ctrl+G)で一つ一つ確認、調査用シートへ記述したら検索結果から削除していく。
4.jspなどのファイルを検索したい場合には、エディタの「ファイルから検索」機能を利用します。私の場合にはEmEditorです。(相当忘れている場合にはすべてのファイルを対象に検索したりもします)

ケースバイケースじゃないかという気もしますが、結局ソースを見ることにはなるのでeclipseで参照検索をしていくのが多いのではないでしょうか。

両国湯屋「江戸遊」

先日、両国湯屋「江戸遊」に行ってきました。

前回行ったスーパー銭湯である「大江戸物語」のコンセプトは「浴衣でぶらぶらさせて食事やゲームでお金を落として貰う」という感じだったのですが、今回の「江戸遊」はどんな感じでしょうか。

印象的な点を並べてみると
・男用、女用が階で区切られており、2階男性専用、4階女性専用、3,5階男女兼用とはっきりしている
・岩盤浴込みの料金なので無料のように感じる(非会員は2300円、会員は2000円) ただし、混雑している時がある。
・お風呂(男性用)は割と小さめ、お風呂自体は3つある。サウナは2種類。
・食事処が3階にあるが、浴衣で食べてる人が少ない。(着替えてから食べて帰る感じ?)
・お風呂→岩盤浴→お風呂というコースでしたが、それなりにゆっくりできました。

総括とすると、
「男女別フロア制なので、一緒にウロウロしている人が基本的に少ない。岩盤浴込みで考えると安い」と言ったところでしょうか。両国駅からもさほど遠くなく立地は良いです。

苦手なこと

1月になり新規の案件がいくつかあり打ち合わせに行く機会があり、
アピール用の資料をいくつか説明してきました。

アピール用の資料を使った事業部の説明などが以前は苦手で、真面目に説明すればするほど「話が堅いよね」と上司に言われてました。その後、しばらく仕様を詰める打ち合わせや現地作業が多くなり新しいお客様に会いに行くという機会がなかったのですが、その間にセミナーに行ったり、上司に付いていったことを思い出したりしたせいでしょうか。一度簡単なリハーサルを上司にお願いし、その反省点を活かし、説明してみると概ね盛り上がるような話ができたかなと感じました。

一度や二度うまくいかないことがあっても、何度がチャレンジするうちにある程度はうまくなるものです。
苦手だからと練習の機会を回避してばかりいると、出来ることも出来なくなってしまいます。
立場が人を成長させると本などに書いてありますが、やれることはやれて当たり前でできないことをできるようにしていくのがまさに成長するということなんだと思います。
livedoor プロフィール
QRコード
QRコード
  • ライブドアブログ