INSERCAO DE UM CAMPO EM UMA TABELA
Alguém tem uma solução para o seguinte problema:
Tenho uma tabela em Acess (97) e o programa ao acessá-la verificaria se determinado campo existe, caso contrário faria a inserção deste novo campo sem prejuizo em relação aos dados já cadastrados.
Há alguma ferramenta que pode gerar esta solução?
Obrigado.
Julio C. Carvalho
JetCupom
Tenho uma tabela em Acess (97) e o programa ao acessá-la verificaria se determinado campo existe, caso contrário faria a inserção deste novo campo sem prejuizo em relação aos dados já cadastrados.
Há alguma ferramenta que pode gerar esta solução?
Obrigado.
Julio C. Carvalho
JetCupom
Amigo, segue código abaixo. Existe sim como fazer isso.
T+
ver460 = [Ô];pwd=123465[Ô]
vCbd = [Ô]c:\Banco.mdb[Ô]
[ô]Abrinco o banco
Set Banco = DBEngine.Workspaces(0).OpenDatabase(vCbd, False, False, ver460)
[ô]INÃCIO DA ATUALIZAÇÃO
[ô]********************************
[ô]verifica se existe a tabela Atualizacao
ExisteT = False
For Each Tabela In Banco.TableDefs
If Tabela.Name = [Ô]Atualizacao[Ô] Then
ExisteT = True
Exit For
End If
Next Tabela
If Not ExisteT Then
[ô]cria a tabela Atualizacao
Set Tabela = Banco.CreateTableDef([Ô]Atualizacao[Ô])
[ô]cria o campo Versao
Set Campo = Tabela.CreateField([Ô]Versao[Ô], dbText, 10)
Campo.AllowZeroLength = True
Tabela.Fields.Append Campo
Banco.TableDefs.Append Tabela
End If
T+
Caro MaxPap
Obrigado pela ajuda, somente uma coisa:
Neste exemplo apresentado a rotina cria uma tabela nova, como fazer para checar se em uma tabela existente existe um campo e caso contrário como incluÃ-lo.
Obrigado mais uma vez.
Julio C. Carvalho
Obrigado pela ajuda, somente uma coisa:
Neste exemplo apresentado a rotina cria uma tabela nova, como fazer para checar se em uma tabela existente existe um campo e caso contrário como incluÃ-lo.
Obrigado mais uma vez.
Julio C. Carvalho
Segue,
T+
[ô]verifica se existe o campo BonusTempo na tabela Grupos
ExisteC = False
Set Tabela = Banco.TableDefs([Ô]Grupos[Ô])
For Each campo In Banco.TableDefs([Ô]Grupos[Ô]).Fields
If campo.Name = [Ô]BonusTempo[Ô] Then
ExisteC = True
Exit For
End If
Next campo
[ô]cria o campo BonusTempo e atualiza os valores
If Not ExisteC Then
Set campo = Tabela.CreateField([Ô]BonusTempo[Ô], dbText, 30)
campo.AllowZeroLength = True
Tabela.Fields.Append campo
End If
T+
Prezado MaxPap
Show de bola... resolvi o problema.
Agradeço mais uma vez sua generosidade.
Somente uma dúvida: Posso fazer uma alteração na estrutura da base de dados com a tabela conectada no programa? Falo isso pelo seguinte: Quando abro o banco de dados, verifico a versão do programa e comparo com uma variável de campo para saber se haverá alteração, caso positivo, o sistema iria modificar a estrutura indicada.
Obrigado mais uma vez.
Um abraço
Julio
Show de bola... resolvi o problema.
Agradeço mais uma vez sua generosidade.
Somente uma dúvida: Posso fazer uma alteração na estrutura da base de dados com a tabela conectada no programa? Falo isso pelo seguinte: Quando abro o banco de dados, verifico a versão do programa e comparo com uma variável de campo para saber se haverá alteração, caso positivo, o sistema iria modificar a estrutura indicada.
Obrigado mais uma vez.
Um abraço
Julio
Tópico encerrado , respostas não são mais permitidas