クラウドで 伸びる人沈む人 |
|
|
|
テーブル定義をchar型からvarchar型にして、データも入れ替える
<IT技術の処方箋:テーブル定義をchar型からvarchar型にして、データも入れ替える> よくシステムリニューアルなどに伴って、 オラクルのテーブルはそのまま使うのだけれど、 項目の定義を変更する場合がありますね。 例えば、 xxxテーブルのaaa項目 char(2) を、varchar2(5) に変換する。 というような感じです(よくありますね)。 そんな時のデータ定義の変更方法は、以下です。(テーブル名xxx) alter table xxx modify aaa varchar2(5) まあ、これは楽ですが。 問題は、データをどうするかってことです。 例えば、aaaに入っているデータの先頭3桁をゼロ埋めする サンプルSQLは、こちらです。 update xxx set aaa = '000'|| aaa ; また、もし、 aaaにスペースなどが入っている可能性がある場合は、 update xxx set aaa = '000'|| trim(aaa) ; としましょう。
慣れてきましたか?慣れてきたら、
Oracleバックアップの「嘘」も勉強 |