SnowConvert: Relatório de referências a objetos

Nota

Os elementos incorporados não são considerados como parte deste relatório.

O que é uma «Referência de objeto»?

Uma referência de objeto é o termo usado para se referir a definições DDL no código-fonte, que estão sendo referenciadas por unidades de código. A tabela abaixo mostra quais elementos podem ser referenciados em cada idioma suportado.

ObjectTeradataOracleTransact-SQLExtensibility Languages
Table
View
Procedure
Function
Macro
Package Function
Package Procedure
*Package
Join Index
Index
Synonym
Database Link
Type
Materialized View
Trigger
Sequence
Constraint

Nota

Se um asterisco (“*”) estiver listado na seção acima, isso significa que o objeto é usado para chamar propriedades de si mesmo que não são consideradas instruções DDL, como constantes, variáveis ou cursores.

Onde posso encontrá-lo?

O relatório de referências a objetos pode ser encontrado em uma pasta chamada «reports», na pasta de saída de sua conversão. O nome do arquivo em si começa com «ObjectReferences» para que possa ser facilmente localizado.

O formato do arquivo é .CSV.

Que informações ele contém?

O relatório de referências a objetos contém as seguintes informações sobre todas as referências encontradas durante a conversão:

Coluna

Descrição

PartitionKey

O identificador exclusivo da conversão.

FileName

O nome do arquivo no qual o objeto está localizado.

Caller_CodeUnit

O tipo da unidade de código que faz referência a um elemento existente.

Caller_CodeUnit_Database

O banco de dados da unidade de código que faz referência a um elemento existente. Por enquanto, somente os objetos do servidor SQL podem ter um banco de dados.

Caller_CodeUnit_Schema

O esquema da unidade de código que faz referência a um elemento existente.

Caller_CodeUnit_Name

O nome da unidade de código que faz referência a um elemento existente.

Caller_CodeUnit_FullName

O nome totalmente qualificado do objeto que faz referência a um elemento existente.

Referenced_Element_Type

O tipo DDL do elemento referenciado.

Referenced_Element_Database

O banco de dados do elemento referenciado. Por enquanto, somente os objetos do servidor SQL podem ter um banco de dados.

Referenced_Element_Schema

O esquema do elemento referenciado.

Referenced_Element_Name

O nome do elemento referenciado.

Referenced_Element_FullName

O nome qualificado completo do elemento referenciado.

Linha

O número da linha dentro do arquivo em que a referência está localizada.

Relation_Type

Mostra o tipo de relação usada por meio da unidade de código do chamador e da referência do objeto.

Tipo de relacionamento

O tipo de relação representa como uma unidade de código do chamador está relacionada a uma referência de objeto. O SnowConvert é capaz de identificar os seguintes tipos de relações:

  • FOREIGN KEY

  • INSERT

  • DELETE

  • UPDATE

  • CALL

  • EXECUTE

  • SYNONYM

  • ALTER

  • DROP

  • MERGE

  • TRUNCATE

  • LOCK

  • INDEX

  • TABLE COLUMN

  • GRANT

  • REVOKE

  • SELECT

    • COLUMN

    • FROM

    • WHERE

    • HAVING

    • GROUP BY

    • JOIN

    • ORDER BY

Exemplos

  1. Um procedimento armazenado que faz referência a uma tabela por meio de uma instrução UPDATE:

 CREATE TABLE TABLE2
(
  COL1 VARCHAR(50) NOT NULL,
  COL2 INT NOT NULL
);

CREATE OR REPLACE PROCEDURE Procedure01 (param1 NUMBER)
IS
BEGIN
    UPDATE TABLE2
    SET COL1 = 'Anderson'
    WHERE COL2 = param1;
END;
Copy

O relatório mostrará algo parecido com a tabela a seguir:

Caller_CodeUnitReferenced_Element_TypeReferenced_Element_FullNameLineRelation_Type
CREATE PROCEDURECREATE TABLETABLE210UPDATE
  1. Uma tabela que faz referência a outra tabela por meio de um FOREIGN KEY:

 CREATE TABLE TABLE1
(
  COL1 INT
);

CREATE TABLE TABLE2 
(
  COL1 INT,
  CONSTRAINT FK_COL1 FOREIGN KEY (COL1)
    REFERENCES TABLE1(COL1)
);
Copy

O relatório mostrará algo parecido com a tabela a seguir:

Caller_CodeUnitReferenced_Element_TypeReferenced_Element_FullNameLineRelation_Type
CREATE TABLECREATE TABLETABLE110FOREIGN KEY
  1. Uma tabela referenciada por uma visualização na cláusula FROM da instrução SELECT:

 CREATE TABLE TABLE1
(
  COL1 INT
);

CREATE VIEW VIEW1 
AS
SELECT * FROM TABLE1;
Copy

O relatório mostrará algo parecido com a tabela a seguir:

Caller_CodeUnitReferenced_Element_TypeReferenced_Element_FullNameLineRelation_Type
CREATE VIEWCREATE TABLETABLE18SELECT - FROM
  1. Uma função definida pelo usuário (UDF) referenciada por uma exibição como uma coluna do conjunto de resultados.

 CREATE FUNCTION FUNCTION1(PARAM1 INT) 
RETURN NUMBER 
IS
BEGIN  
  RETURN(PARAM1 + 1); 
END;

CREATE VIEW VIEW1
AS
SELECT FUNCTION1(*) FROM TABLE1;
Copy

O relatório mostrará algo parecido com a tabela a seguir:

Caller_CodeUnitReferenced_Element_TypeReferenced_Element_FullNameLineRelation_Type
CREATE VIEWCREATE FUNCTIONFUNCTION110SELECT - COLUMN