Oracle では、SQLの実行によって関数の値を取得したい場合などに、dual テーブルからデータを取得することができます。以下の例では、SQLクエリによって現在日時を取得しています。
select to_char(sysdate, 'yyyy/mm/dd hh24:mi:ss') as dummy from dual;
好きか嫌いか最優先 正悪気にする暇はなし
Oracle では、SQLの実行によって関数の値を取得したい場合などに、dual テーブルからデータを取得することができます。以下の例では、SQLクエリによって現在日時を取得しています。
select to_char(sysdate, 'yyyy/mm/dd hh24:mi:ss') as dummy from dual;
データベースを Access から SQL Server にリプレースする際に IsNULL 関数でクエリがNGになりました。備忘録としてここに残しておきます。
SQL Server Management Studio で列の NULL値を許可しないように変更したり、主キーを追加しようとすると、次のようなエラーになることがあります。
変更の保存が許可されていません。行った変更には、次のテーブルを削除して再作成することが必要になります。再作成できないテーブルに変更を行ったか、テーブルの再作成を必要とする変更を保存できないようにするオプションが有効になっています。
毎度のまさおの愚痴コーナーです。
「だん吉、なお美のおまけコーナー」より断然つまらないコーナーです。
今回はデータベースのカラム名とかについて愚痴ります。どれだけ理屈を並べ立てても、カラム名に¥とか#のような記号を使うことは避けましょう。
ここでは、MS Access のSQLで使用できるLen関数とLenB関数の使用方法を掲載しています。
Len 関数 | 文字列の文字数を取得する |
LenB 関数 | 文字列のバイト数を取得する |
ここでは、最近遭遇した次の Oracle エラーについて愚痴を言いながら掲載しています。
ORA-00972: 識別子が長すぎます。
そもそも、このエラーが発生したのはサブクエリの名前を長くしろって言ってくるアイツが原因です。ボケ!
自分の感覚で Oracle を条件検索したときに遭遇した罠のお話です。おそらくは、同様の状況になったこともあるとは思うのですが、記憶は全くありません。(はっ、もしや、バグが混入したまま動いてるのでしょうか?というよりも、バグのないシステムなどありません)
ここでは、Java + Spring フレームワーク( Java や Springは直接は無関係 )でオラクルエラー「ORA-02289: 順序が存在しません。」が発生するときの原因について掲載しています。
が、真の問題はエラーメッセージだと思われます。本当に意味が分かりにくいです。日本語に無理に訳して「なんだかな」って感じです。
Oracle でレコード固有の値である ROWID と文字列を相互に変換するサンプル SQL を掲載しています。特定のレコードを抽出するために多く使用されています。
Oracle では、数値の四捨五入には round 関数を、数値の切り捨てには trunc 関数を使用して行うことができます。ここでは、そのサンプルを掲載しています。