Home

tech2web

[SQL*PLUS]NUMBER型の値を取得→桁落ち?

先日、SQL*PLUSを使って、DB(Oracle 9i)からNUMBER型の値を取得しようとしていました。
それもかなり大量のレコード。

データが多いせいで最初は判らなかったのですが、いくつかのレコードが桁落ち?している事が発覚。

例えば。
“HOGE_TABLE”という表に、“HOGE_NUMBER”というNUMBER型カラムがあって、以下の値が格納されているとします。

 ・123456789
 ・1234567890
 ・12345678909

これを取得します。

 【SQLコマンド】
 SQL> SELECT HOGE_NUBER FROM HOGE_TABLE;

 【SQL結果】
 HOGE_NUMBER
 —————
 123456789
 1234567890
 1234567890

3つ目のレコードが正常に取得できてません(汗
それも落ちてる桁が「9」なので、桁落ちにしても変です(多汗

原因は。。。
SQL*PLUSの「設定」の問題でした。
サイズ(桁)が設定されていないNUMBER型カラムの場合、SQL*PLUSのデフォルト設定では「最大10桁(バイト)まで」を取得して表示するようになっているとの事。

その設定は、「SHOW numwidth」で確認できます。
(確認したらやはり”numwidth 10″でした)

これを変更するには、以下のコマンドを入力します。
 SET numw [バイト数]

先ほどの例で言うと、「SET numw 12」と設定しておけば12バイトまで表示されるので解決できた訳です。

 【SQLコマンド】
 SQL> SET numw 12
 SQL> SELECT HOGE_NUBER FROM HOGE_TABLE;

 【SQL結果】
 HOGE_NUMBER
 —————
 123456789
 1234567890
 12345678909

更に言えば、このテーブルを作る時にきちんとNUMBER型の最大サイズを定義しておけば発生しない問題だったんですねw

「サイズ未定義のNUMBER型カラム」から値を取得する場合は気を付けましょう。

[Firefox2]Webページのソースを外部エディタで開く方法

Firefoxで「ページのソースを表示」をすると独自画面でソースが表示されます。
Firefoxのソース表示
(こんな感じの画面)

「メモ帳」に比べれば相当読み易いのですが・・・
Firefoxでは他のエディタを指定する事ができます。
その設定方法を以下に示します。

【1】設定画面を開く
Firefoxのアドレスバーに「about:config」と入力してFirefoxの詳細設定を開きます。
この画面ではパラメータと値の表が表示されて、その値を変更する事でFirefoxの細かい設定ができるようになってます。
abount:config画面
(コレ凄い便利)

【2】値を設定する
・「view_source.editor.external」の値を”true”に変更。
view_source.editor.external値変更

・「view_source.editor.path」に外部エディタのパスを入力。
view_source.editor.path値変更

以上で設定完了です。
Firefoxを再起動する(開き直す)と反映されているはずです。

IEだとデフォルトの「メモ帳」から他のエディタに変更するのは結構面倒です。
でもFirefoxならこんなに簡単!

お勧めブラウザ!「Firefox2」

皆さんはインターネットの閲覧にどんなブラウザを使っていますか?

そもそも「ブラウザ」とは、インターネットを「Browse」(閲覧)するためのソフトを指します。

意識して使っていない場合、おそらく「Internet Explore」を使っている方が多いと思います。
Windowsにプリインストールされているし、OSと不可分の存在にされてますから当然でしょう。

…しかしInternet Explore(以下「IE」)だけがWebブラウザではありません。
ある程度普及しているものだけでも、
・Netscape
・Opera
・Sleipnir
・Lunascape
・Safari
などがあります。

Microsoftの思惑通り(?)にIEを使い続けるのも楽っちゃ楽なんですが、ちょっとブラウザに凝ってみるのはいかがでしょう?


おれっちのお勧めは「Firefox」です。

Firefoxの公式サイト

便利ポイント1 【タブが使える】
IEでもバージョン7から実装されてるようですが。
ひとつのウィンドウで複数のページを開く事ができる「タブブラウザ」機能です。
同時にいろんなサイトを見ていて、ウィンドウが何個も立ち上がる…なんて事がなくなります。

ポイント2 【Googleツールバー対応】
知らないうちにIEにインストールしちゃってる人もいて、厄介者扱いされる事もありそうな「Googleツールバー」ですが、ちゃんと使うと物凄く便利です。Google検索機能はもちろん、Gmailとの連携機能や、Googleブックマークなんかが使えたり。
特に、複数のパソコン(家と仕事先とか)で同じ「お気に入り」を使いたい場合、Googleブックマークは絶大な威力を発揮します。

ポイント3 【かなりカスタマイズできる】
Firefoxには「アドオン」と呼ばれる追加機能が沢山存在しており、自分の使いたい機能をどんどん追加する事ができます。
ちなみにおいらは、Web作成に役立つアドオンや、2ちゃん閲覧アドオン、YouTubeダウンロードアドオン等を入れてます。

「お勧め」とは言いつつも、使い手ごとに一番しっくり来るブラウザは違うはずです。
おれっちのチョイスも「Web制作」「複数マシンで同じ環境」という課題に特化していますし。

ブラウザは無料がほとんどです。
折角なので、いろいろと試してみるのはどうでしょう?

Javaの”クラス”

せっかく勉強しているので、ちょっとまとめます。

クラスとは。
→自分で作る事ができる「型」。

以下、大まかな構成。

・フィールド
クラスの持つ変数。

・コンストラクタメソッド
クラスが生成される際に必ず実行される処理。
必ず行う処理(変数の初期化など)を書く。

・ゲッター/セッターメソッド
privateで宣言したフィールドの値を取得・設定するメソッド。
(VBの「プロパティ」)

・メソッド
クラスで実行する処理。
関数。

書いてて何か違うような気もしてきました。。。
(もし判る人がいたらご指摘願います)

Javaの勉強本

わたくしSEとして働いておりますので、あまりコーディングする機会があまりありません。

というわけで自社でプログラムの研修を受けています。
しかしなかなか成長できていないワタクシ…。

そんな中、先輩から先月誕生日プレゼントとして頂いた本があります。

やさしいJava

「やさしいJava 第3版」
高橋 麻奈 (著)

この本、素晴らしく解かり易いんです。。。

もし、これからプログラム(この場合、言語は勿論Javaね)を覚えようという人がいたら、ぜひお奨めです。
最初に読む入門書としては最適じゃないでしょうか。

スケケン先輩に感謝です。

ASTERIA(アステリア)

仕事でASTERIA(アステリア)というソフトを使っています。
どんなソフトとかというと、データ連携を中心とするプログラムをノンコーディングで実現するGUI(グラフィックユーザーインターフェース)ベースのソフトです。
もうちょっと噛み砕いて言うと、いろんなデータ(データベースやらweb上やらの)を、本来はプログラムを書いて加工やら計算やらして他のシステムに渡していたのを、画面上で部品を繋ぎ合わせる事で実現してしまおうというソフト。
…要するに、プログラム言語(C言語やPHPやJava等)が解らなくても、そういうデータをやり取りするプログラムが作れてしまうソフトです。

ここまでの説明だけで解る人にはこのソフトの凄さ・斬新さが解ってもらえると思います。

以下、概略です。
ASTERIAはInfoteriaという会社が作った製品です。
長年プログラム開発の現場が抱えている「作り手と使い手の溝」という永遠の課題を解決すべく考え出された思想ようです。
確かに使ってみると、(変数とか条件式とか最低限の知識は必要だけど)素人同然でも理解できる操作性。
本当に、部品を置いて線で繋いでいくだけで簡単なデータ連携プログラムが出来てしまいます。
ただし、まだまだ大規模な企業でしか手が出せない価格帯です。(本番環境で使うには、サーバー1CPU当たりウン百万)
その癖、ユーザーが少ない故か物凄く単純なバグが残っていたり、正直いまひとつな部分もあったり…。

でも折角使い方覚えてきたし、何よりこれから伸びていくであろう(伸びていくべき)ジャンルのソフトウェアなので、これからASTERIAに挑戦する人の為にも、ちょっとづつ記録・解説して行きたいと思います。

※ちなみに、Infoteriaから何か見返りがある訳ではありません。
(「ASTERIA」検索でのPV向上は狙ってますがw)

次回はASTERIAのシステム構成ににいて触れようと思います。

Home

Search
Feeds
Meta

Return to page top