SABER SE UMA TABELA ESTA ABERTA

USUARIO.EXCLUIDOS 23/08/2007 13:03:26
#232248
pessoal, gostaria de saber se tem como saber se uma tabela do banco de dados está aberta. eu achei alguns poucos tópicos sobre esse assunto aki no fórum mas ñ funcionaram.

eu usei a propriedade .state, mas se a tabela estiver fechada o programa dá um erro.

fiz assim:

if tb.state = adStateOpen then tb.close

mas se a tabela estiver fechada ele dá um erro logo na condição.
obrigado a todos e bom trabalho!
RODRIGOGBGOMES 23/08/2007 13:05:52
#232251
Resposta escolhida
tenta assim... if Tb.State = 1 Then set Tb = nothing
lembrando que sempre que executar alguma função com a recordser feche-a ao concluir a operação. vlw.

USUARIO.EXCLUIDOS 23/08/2007 13:11:49
#232255

eh para fazer justamente isso, caro Rodrigo. mas infelizmente a dica ñ funcionou. se a tabela estiver fechada dá um erro na condição if, se estiver aberta ele executa. porém no caso ñ importa se a tabela está aberta o fechada, né. a condição deve ser verificada. se tiver aberta, fecha.
SILVERDRAGON 23/08/2007 13:15:05
#232257
Faz assim....

Coloca um campo chamado Flag na sua Tabela..... Esse campo Flag vai servir para identificar se a tabela esta Aberta ou Fechada....

Nesse campo vc cadastra 0 ou 1... Se for:
0 - Entaum tabela fechada
1 - Entaum tabela Aberta

Quando for fazer algo na Tabela vc insere o numero 1 e quando nao for usar mas vc coloca o numero 0 nesse campo... Entendeu????


tenta ai...

flw
USUARIO.EXCLUIDOS 23/08/2007 13:23:58
#232260
entendi...

vlw pela dica!!! obrigado!
SILVERDRAGON 23/08/2007 13:31:37
#232265
Testa e nao esqueça de finalizar o tópico...


flw
USUARIO.EXCLUIDOS 23/08/2007 13:31:40
#232266
aproveitando o tópico, alguém poderia dar uma olhada no que está errado nessa rotina?

SqlTabela = "select * from DIZIMISTA where NOMEDIZIMISTA like '" & Text1.Text & "*" & "' order by NOMEDIZIMISTA"

Set tb = New ADODB.Recordset
Set tb = base.Execute(SqlTabela)

If tb.RecordCount > 0 Then
tb.MoveFirst
Do While Not tb.EOF()
List1.AddItem tb!NOMEDIZIMISTA

tb.MoveNext
Loop
End If

estou tentando listar os registros da tabela, dependendo do que eu digitar na textbox.

não se preocupem q a linha que abre a base de dados está funcionando.

obrigado, pessoal!
SILVERDRAGON 23/08/2007 13:59:47
#232274
Amigo,

Primeiro feche esse e depois abra um outro só com esse assunto .. ok...
Nos estaremos apostos para lhe ajudar..


flw
Tópico encerrado , respostas não são mais permitidas