0018935: Cadastro de Cliente - NumFidelidade
bug#18935 dev:thiago.veloso qua: git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/BD/FlyWay/trunk@101152 d1611594-4594-4d17-8e1d-87c2c4800839master
parent
b31d523be0
commit
90e342d2b8
|
@ -0,0 +1,69 @@
|
|||
--CRIA NOVA COLUNA
|
||||
declare
|
||||
column_exists exception;
|
||||
pragma exception_init (column_exists , -01430);
|
||||
begin
|
||||
execute immediate 'ALTER TABLE TARJETA_FIDELIDAD ADD (NUMTARJETA_BACKUP VARCHAR(30))';
|
||||
exception when column_exists then null;
|
||||
end;
|
||||
/
|
||||
-- COPIA OS VALORES
|
||||
declare
|
||||
dup_val_on_index exception;
|
||||
except_02291 exception;
|
||||
pragma exception_init (dup_val_on_index , -00001);
|
||||
pragma exception_init (except_02291 , -02291);
|
||||
begin
|
||||
execute immediate 'UPDATE TARJETA_FIDELIDAD SET NUMTARJETA_BACKUP = NUMTARJETA';
|
||||
exception
|
||||
when dup_val_on_index then null;
|
||||
when except_02291 then null;
|
||||
end;
|
||||
/
|
||||
--LIMPA O COLUNA
|
||||
declare
|
||||
dup_val_on_index exception;
|
||||
except_02291 exception;
|
||||
pragma exception_init (dup_val_on_index , -00001);
|
||||
pragma exception_init (except_02291 , -02291);
|
||||
begin
|
||||
execute immediate 'UPDATE TARJETA_FIDELIDAD SET NUMTARJETA = NULL';
|
||||
exception
|
||||
when dup_val_on_index then null;
|
||||
when except_02291 then null;
|
||||
end;
|
||||
/
|
||||
--ALTERA A COLUNA
|
||||
declare
|
||||
column_exists exception;
|
||||
pragma exception_init (column_exists , -01430);
|
||||
begin
|
||||
execute immediate 'ALTER TABLE TARJETA_FIDELIDAD MODIFY (NUMTARJETA VARCHAR(30))';
|
||||
exception when column_exists then null;
|
||||
end;
|
||||
/
|
||||
--ATUALIZA A COLUNA ANTIGA COM OS VALORES DA NOVA
|
||||
declare
|
||||
dup_val_on_index exception;
|
||||
except_02291 exception;
|
||||
pragma exception_init (dup_val_on_index , -00001);
|
||||
pragma exception_init (except_02291 , -02291);
|
||||
begin
|
||||
execute immediate 'UPDATE TARJETA_FIDELIDAD SET NUMTARJETA = NUMTARJETA_BACKUP';
|
||||
exception
|
||||
when dup_val_on_index then null;
|
||||
when except_02291 then null;
|
||||
end;
|
||||
/
|
||||
-- ALTER TABLE DROP COLUMN
|
||||
declare
|
||||
object_exists exception;
|
||||
except_00904 exception;
|
||||
pragma exception_init (object_exists , -01430);
|
||||
pragma exception_init (except_00904 , -00904);
|
||||
begin
|
||||
execute immediate 'ALTER TABLE TARJETA_FIDELIDAD DROP COLUMN NUMTARJETA_BACKUP';
|
||||
exception
|
||||
when object_exists then null;
|
||||
when except_00904 then null;
|
||||
end;
|
|
@ -0,0 +1,47 @@
|
|||
--CRIA NOVA COLUNA
|
||||
DO $$
|
||||
BEGIN
|
||||
ALTER TABLE TARJETA_FIDELIDAD ADD (NUMTARJETA_BACKUP VARCHAR(30));
|
||||
EXCEPTION WHEN duplicate_column THEN NULL;
|
||||
END
|
||||
$$;
|
||||
/
|
||||
-- COPIA OS VALORES
|
||||
DO $$
|
||||
BEGIN
|
||||
UPDATE TARJETA_FIDELIDAD SET NUMTARJETA_BACKUP = NUMTARJETA;
|
||||
EXCEPTION WHEN duplicate_column THEN NULL;
|
||||
END
|
||||
$$;
|
||||
/
|
||||
--LIMPA O COLUNA
|
||||
DO $$
|
||||
BEGIN
|
||||
UPDATE TARJETA_FIDELIDAD SET NUMTARJETA = NULL;
|
||||
EXCEPTION WHEN duplicate_column THEN NULL;
|
||||
END
|
||||
$$;
|
||||
/
|
||||
--ALTERA A COLUNA
|
||||
DO $$
|
||||
BEGIN
|
||||
ALTER TABLE TARJETA_FIDELIDAD MODIFY (NUMTARJETA VARCHAR(30));
|
||||
EXCEPTION WHEN duplicate_column THEN NULL;
|
||||
END
|
||||
$$;
|
||||
/
|
||||
--ATUALIZA A COLUNA ANTIGA COM OS VALORES DA NOVA
|
||||
DO $$
|
||||
BEGIN
|
||||
UPDATE TARJETA_FIDELIDAD SET NUMTARJETA = NUMTARJETA_BACKUP;
|
||||
EXCEPTION WHEN duplicate_column THEN NULL;
|
||||
END
|
||||
$$;
|
||||
/
|
||||
-- ALTER TABLE DROP COLUMN
|
||||
DO $$
|
||||
BEGIN
|
||||
ALTER TABLE TARJETA_FIDELIDAD DROP COLUMN NUMTARJETA_BACKUP;
|
||||
EXCEPTION WHEN duplicate_column THEN NULL;
|
||||
END
|
||||
$$;
|
Loading…
Reference in New Issue