Oracle

ストアドプロシージャ(PL/SQL)でSQLCODE

ストアド上で DB エラー関連の Exception が発生した場合、SQLCODE を確認するとエラー内容が確認できます。

まあ、SQLERRM を見た方がわかりやすいのでしょうが、定番の SQLCODE なんかもありそうです。

SQLCODEの一覧

ちなみに今日たまたま見つけたのがこれ。

[ORA-01401]
列に挿入した値が大きすぎます

全 SQLCODE の一覧ってないのかな・・・。
(主要なコード一覧はあるのですけどね)

エラーの原因

エラーの原因は、そのまま VARCHAR2(8)などのカラムに、10 バイトの文字列を入れちゃったときなどです。

今回は半角英数字を扱いましたが、マルチバイトが絡むといやらしい問題とかあったりするのでしょうか?

文字コードの問題とか・・・。

ストアドを Object Browser でデバックするのと、シェルスクリプトなどから呼ぶ時で、引数の違いがある場合はやはりテストは念入りにやらないとダメですね。

[ORA-29283]
無効なファイル操作です

ストアドを呼ぶ前にシェルスクリプトでファイルの有無を見るべきなのでしょうが、こんなコードも用意されてました。

どうしてもダイヤが必要な場合

時間を短縮したい。お店屋さんの生産枠を増やしたい。など、ゲームを進めるうえで、どうしても少しだけダイヤを課金したくなる時ってありますよね。

そんな時は、楽天市場で「itunesカード」を購入すると楽天ポイントの還元があってお得です。

iOS(iPhone)の人に限られてしまいますが、初回購入時に 500 円オフのキャンペーンをしていたり、楽天ポイントも最大で 16 倍とものすごくお得です。

[商品価格に関しましては、リンクが作成された時点と現時点で情報が変更されている場合がございます。]

App Store & iTunes ギフトカード(3,000円)
価格:3000円(税込、送料無料) (2020/5/24時点)