Árvore de páginas

Função para materializar uma view e seus dados em uma tabela física.

Sintaxe

TCView2DB( < cView >, < cTable > )

Parâmetros

Nome

Tipo

Descrição

Obrigatório

Referência

cView

caractere

Nome da view a ser materializada.

X


cTable

caractere

Nome da tabela a ser criada no SGBD.

X


Retorno

Nome

Tipo

Descrição

lRet

lógico

Retorna .T. se tabela cTable foi criada, caso contrário, retorna .F. e o motivo do erro pode ser verificado com a função TCSQLError.

Observações

  • As operações são realizadas em uma única etapa, que envolve a criação da nova tabela com a estrutura da view e o insert de todas as linhas da view na nova tabela física.

Exemplos

STATIC FUNCTION CreateTable()
  TCDelFile("VIEW1")
  TCDelFile("T1")
  TCDelFile("T2")
  TCDelFile("T3")
  
  DBCreate("T1", {{"FIELD_NAME", "C", 10, 0}, ;
                  {"FIELD_TYPE", "C", 10, 0}}, "TOPCONN")
                  
  DBCreate("T2", {{"FIELD_NICK", "C", 10, 0}, ;
                  {"FIELD_TYPE", "C", 10, 0}, ;
                  {"FIELD_ID"  , "N", 3, 0}}, "TOPCONN")
RETURN

FUNCTION u_TCView2DB()
  TCLink()
  
  CreateTable()
  
  IF TCViewMulti("VIEW1", "T1", "T1,FIELD_NAME,T2,FIELD_TYPE,T2,FIELD_ID") == .F.
    UserException("TCViewMulti failed")
  ENDIF
  
  IIF(TCView2DB("VIEW1", "T3"), CONOUT('TRUE'), CONOUT('FALSE')) // Será criada a tabela T3 com os campos FIELD_NAME, FIELD_TYPE e FIELD_ID
  
  TCUnlink()
RETURN

Abrangência

Esta função está disponível no Application Server - build 7.00.131227A, com data de geração superior a 09/08/2016 e depende de um DBAccess com build superior a 20160402.

Veja também

  • Sem rótulos