日別アーカイブ: 2011/04/22

業務コードで使う例外処理のたった1つの方法

いわゆる「○つの方法」という釣りタイトルですが、ワタクシ的には例外処理に関しては一択です。 例外処理については、方法論的にも色々あるのは分かっているのですが、「業務」という範囲で考えると、という選択です。 UIがある場合とない場合で、ちょっとだけ書き方が分かれます。 こんな風に、関数/メソッド内の処理を【全て】try catch で囲ってしまいます。 乱暴ですよね…ですが、この方法って VB3.0 の頃からの鉄板な方法だったりします。 のように、VB の頃(.NETではない)は、ON ERROR GOTO を使っていました。 さて、この頃 C++ はどうだったかというと…実は C++ は余り流行ってはいなくて、いまだ C 言語が主流でした。なので C 言語の場合は、 な風に、戻り値でエラーを判別するしかなかったのです。 この鉄板の例外処理でログイン処理を書いてみると … 続きを読む

カテゴリー: 開発 | 2件のコメント

SQL Server 2000 では文字列を数値に勝手に変換するよ

後で、SQL Server 2008 とかの最新バージョンを調べますが、落とし穴になりかねないのでメモ。 として test1 テーブルを作成しておきます。 ここに次のようなデータを入れます。 このデータを検索します。 この結果は予想通り、1行目が取得できます。 さて、num に文字列の’10’を指定したときはどうなるでしょうか? マッチングしないと思いきや、自動的に文字列型から数値型に変換されて、1行取得されます。 # Oracle の場合は変換エラーになったと思うのだけど、うろ覚えです。 逆に文字列型(varchar)に対して数値で比較してみると、 これはエラーになります。 1行目の name 列の値「masuda」が int 型に変換できないためにエラーになっていますね。 となると、name 列の値が全て数値型になるようにしたら、どうなるのでしょうか? というデ … 続きを読む

カテゴリー: 開発 | 2件のコメント