Acesso 2010 com tabelas SQL ligadas
-
14-11-2019 - |
Pergunta
Eu tenho uma visualização de formulário dividida com dados provenientes de SQL Server vinculado (2008).
Como faço para atualizar o registro?
Atualmente, não vai me deixar alterar qualquer coisa nas caixas de texto que eu suponho que isso é porque os dados estão vindo de tabelas vinculadas?!
Para atualizar, tenho que criar objetos de comando e coonn e programá-lo na maneira habitual VB?
e se sim, qual é a sintaxe para referenciar as tabelas vinculadas ao criar a consulta de atualização?
Na minha forma dividida eu soltei um botão lá e posso ver opções para torná-lo executado macro, executar código, etc etc, qual é adequado?
Muito obrigado,
ks
Solução
Primeiro, certifique-se de que a tabela não fosse links somente leitura.
Quando você vincula a uma tabela remota, o acesso o tornará somente leitura se não puder identificar uma chave primária ou outra combinação de campos para identificar exclusivamente cada linha.Às vezes, mas nem sempre, pode pedir-lhe para dizer qual campo (s) usar como a chave primária se for incerta.
Mas esse problema é simples de verificar.Abra a tabela vinculada diretamente na exibição da folha de dados e veja se você pode editar quaisquer valores.Se não, reinicie a tabela e procure uma opção para informar o acesso sobre a chave primária.
Se o link não estiver somente leitura, verifique se o seu formulário permita que a propriedade Edits seja definida como Sim.
Também você pode tentar uma forma simples em vez de uma forma dividida para determinar se algo sobre o formulário dividido está causando o problema.
Outras dicas
Solução:
MS Access Barfs Ao tentar registrar tabelas com uma chave primária do tipo BIGINT, que é de 8 bytes, o acesso só pode lidar com ints de 4 bytes.Solução alternativa está abaixo:
- .
- soltar a restrição (bigint pk) na tabela SQL
- Crie uma nova chave primária (INT) com sementes de identidade
- Link a tabela no MS Access
- largar nova restrição (int pk) e adicionar sua restrição anterior (Bigint PK) no MS SQL
voila!