2009年1月14日 星期三

oracle alter table by another table

select 'ALTER TABLE K0I200.DTD_APLS_BOM MODIFY('||ta.c1||' VARCHAR2('||C.DATA_LENGTH||' BYTE));'
from SYS.USER_TAB_COLUMNS c
left outer join (
select column_name as c1, DATA_LENGTH as l1 , DATA_TYPE
from SYS.USER_TAB_COLUMNS
where table_name = 'DTD_APLS_BOM'
) ta
on C.COLUMN_NAME = ta.c1
where table_name = 'DP_APLS_BOM' and ta.l1 is not null and C.DATA_TYPE = 'VARCHAR2'
order by 1

2009年1月13日 星期二

MS SQL 清除交易紀錄檔

--清log
backup log DB_NAME with truncate_only
go

--完整備份一次
backup database DB_NAME to disk = 'c:\DB_NAME.bak'
go

--壓縮資料庫釋放空間
dbcc shrinkdatabase (DB_NAME, 10)
go