Oracleで小文字のテーブル名の扱い

ある業者さんが、テーブル名、フィールド名を小文字で作ったため、SQL*Plusを使うときの注意をメモした。
テーブル名をactual_userとする。

■セレクト文の書き方

> SELECT "email" FROM "actual_user"

■SQL*Loader
idは、「順序」から発行する。
login_nameは、C00173547のようにCを頭に8桁の数字。
regist_timeは、時間付きの日付。
source_otherは、全件、CLを入力。
input_dateは、今日の日付。
とする。

LOAD DATA
中略
(
"id"    "?"actual_user_id_seq?".NEXTVAL"   ,
"login_name"    EXPRESSION "'C' || LPAD(to_char(test2_seq.NEXTVAL), 8, '0')"  ,
"email"   ,
"regist_time"   "to_date(:?"regist_time?", 'yyyy/mm/dd HH24:MI:SS')"  ,
"source_other"  CONSTANT "CL"  ,
"input_date"  SYSDATE
)


■データのエクスポート

$ exp scott/tiger tables='?"actual_user?"'

■改行コードを置換する
生データを用意したとき、改行コードをLFにするのを忘れて、CRLFにしていたため、CRがデータとしてインポートされてしまったので、一括で削除する。

> UPDATE "actual_user"
> SET "email" = REPLACE( "email", chr(13), '' )
> WHERE "email" like '%' || chr(13) ;