Retorna um array com a(s) View(s) associada(s) a tabela.
Sintaxe
Parâmetros
Nome | Tipo | Descrição | Obrigatório | Referência |
---|
cTable | caractere | Nome da tabela que será avaliada. | X |
|
Retorno
Nome | Tipo | Descrição |
---|
aViews | vetor | Array com a lista de Views associadas a tabela. |
Observações
- O uso da função TCHasView é recomendo para avaliar se a tabela tem view associada a ela, permitindo que o desenvolvedor delete a View antes de fazer o delete de uma tabela usando a TCDelFile.
- Recomenda-se sempre utilizar a TCCanOpen para verificar se a tabela que será avaliada existe.
- Caso ocorra erro no processo de avaliação e/ou deleção da tabela/view, utilize a função TCSQLError para verificar a mensagem de erro retornada pela aplicação.
Exemplos de retorno:
Conteúdo | Detalhes |
Array vazio | Um array vazio, pode significar: - Não há view associada a tabela.
- A tabela informada via parâmetro não existe.
|
Array com conteúdo | Nome(s) da(s) view(s) associada(s) a tabela. |
Exemplos
user function exemplo
local cT1 := "T1"
local cView:= ""
local cRDD := "TOPCONN"
local i
TCLink()
clearEnv(cT1)
// criação da tabela base para a view
DBCreate(cT1, {{"FIELD_NAME", "C", 10, 0}, ;
{"FIELD_TYPE", "C", 10, 0}}, cRDD)
// criação da view VIEW1 associada a tabela T1
for i := 1 to 3
cView := "VIEW"+cValToChar(i)
if TCViewOne(cView, "T1") == .F.
UserException("TCViewOne - CREATE VIEW FAIL")
endif
next
conout('Views associadas a tabela T1: ')
varInfo("",TCHasView("T1"))
clearEnv(cT1)
TCUnLink()
return
static function clearEnv(cT1)
local i
TCLink()
if TCCanOpen(cT1)
aViews := TCHasView(cT1)
else
conout(TCSQLError())
return
endif
if ( len(aViews) > 0 )
for i:= 1 to len(aViews)
TCDelFile(aViews[i])
next
endif
if TCCanOpen(cT1)
if (!TCDelFile(cT1))
conout("FAIL TO DELETE TABLE: " + cT1)
conout(TCSQLError()) //apresenta a mensagem de erro do SGBD
endif
endif
TCUnLink()
return
Veja também