65 lines
1.9 KiB
SQL
65 lines
1.9 KiB
SQL
-- ----------------------------
|
|
-- 发票表结构更新脚本 (Oracle)
|
|
-- 说明:此脚本用于为发票表添加发票号码、结算关联和税率字段
|
|
-- 请根据实际情况谨慎执行,建议先备份数据
|
|
-- ----------------------------
|
|
|
|
-- ----------------------------
|
|
-- 第一步:备份原有数据(可选,建议执行)
|
|
-- ----------------------------
|
|
-- create table biz_invoice_backup as select * from biz_invoice;
|
|
|
|
-- ----------------------------
|
|
-- 第二步:添加发票号码字段
|
|
-- ----------------------------
|
|
declare
|
|
v_column_exists number;
|
|
begin
|
|
select count(*) into v_column_exists
|
|
from user_tab_columns
|
|
where table_name = 'BIZ_INVOICE'
|
|
and column_name = 'INVOICE_NO';
|
|
|
|
if v_column_exists = 0 then
|
|
execute immediate 'alter table BIZ_INVOICE add INVOICE_NO varchar2(100)';
|
|
execute immediate 'comment on column BIZ_INVOICE.INVOICE_NO is ''发票号码''';
|
|
end if;
|
|
end;
|
|
/
|
|
|
|
-- ----------------------------
|
|
-- 第三步:添加结算关联字段
|
|
-- ----------------------------
|
|
declare
|
|
v_column_exists number;
|
|
begin
|
|
select count(*) into v_column_exists
|
|
from user_tab_columns
|
|
where table_name = 'BIZ_INVOICE'
|
|
and column_name = 'SETTLEMENT_ID';
|
|
|
|
if v_column_exists = 0 then
|
|
execute immediate 'alter table BIZ_INVOICE add SETTLEMENT_ID number(20)';
|
|
execute immediate 'comment on column BIZ_INVOICE.SETTLEMENT_ID is ''结算ID''';
|
|
end if;
|
|
end;
|
|
/
|
|
|
|
-- ----------------------------
|
|
-- 第四步:添加税率字段
|
|
-- ----------------------------
|
|
declare
|
|
v_column_exists number;
|
|
begin
|
|
select count(*) into v_column_exists
|
|
from user_tab_columns
|
|
where table_name = 'BIZ_INVOICE'
|
|
and column_name = 'TAX_RATE';
|
|
|
|
if v_column_exists = 0 then
|
|
execute immediate 'alter table BIZ_INVOICE add TAX_RATE varchar2(10)';
|
|
execute immediate 'comment on column BIZ_INVOICE.TAX_RATE is ''税率(1:6%+2% 2:10%+2% 3:13%+2%)''';
|
|
end if;
|
|
end;
|
|
/
|