2013-07-15 39 views
0

我已經用日期加載了日期字段,並輸入了is varchar。在SQL加載器中將varchar轉換爲日期

如何在顯示字段時在oracle express/sql loader中將日期字段(varchar)轉換爲日期字段(日期)?

+0

我不知道我明白你在問什麼。你問如何改變永久表中列的數據類型?如何使用SQL * Loader將數據加載到表中的'DATE'列中?如何將外部表定義從'VARCHAR2'更改爲'DATE'?或者是其他東西? –

+0

我已經加載類型varchar。現在爲了與其他數據庫進行比較,我需要將數據類型轉換爲DATE以便與其他數據庫的字段兼容 – RRR

回答

0

當數據有數據時,不能將永久表中列的數據類型從VARCHAR2更改爲DATE

你可以,但是,添加新列

ALTER TABLE table_name 
    ADD(new_date_column DATE); 

移動數據超過

UPDATE table_name 
    SET new_date_column = to_date(old_varchar2_column, format_mask); 

刪除舊列

ALTER TABLE table_name 
    DROP COLUMN old_varchar2_column; 

然後重命名新列舊欄目名稱

ALTER TABLE table_name 
    RENAME COLUMN new_date_column TO old_column_name 

當然,一旦你這樣做,你需要改變你的SQL * Loader腳本來將數據轉換爲DATE,如果你想再次加載到這個表。

+0

我不想更改任何列的特性,但只想顯示爲日期。這是否可能?使用任何功能,如演員...? – RRR

+0

@RRR - 我仍然對你所問的問題感到困惑。也許你只是想在列上調用'to_date'函數作爲比較的一部分(儘管這樣做會很慢)? –

相關問題