Pergunta

Eu rencently usado o SQL Server Assistente de Migração para importar um banco de dados no SQL Server 2005.Notei que um número de tabelas que foram importados foram modificou com uma nova coluna chamada SSMA_timestamp.

Alguém pode me dizer o que é isso e como ela poderia ser usada?

Foi útil?

Solução

Eu acho que este é gerado assim que o assistente de Migração pode detectar alterações aos dados durante a migração.

A menos que você continuar a utilizar o Access como front-end para este banco de dados específico que você tenha migrado para o SQL Server (no caso, ver Simon resposta), eu não acho que eles vão ser usados para qualquer coisa depois que a migração for concluída, portanto, deve ser seguro para soltar essas novas colunas uma vez a certeza de que tudo está feito.

Outras dicas

As colunas adicionadas SSMA_Timestamp não são usadas apenas durante a migração. Na verdade, eles ajudam a evitar erros ao acessar atualizações de registros em tabelas vinculadas ao SQL Server. Portanto, se você ainda estiver usando um front end de acesso vinculado ao banco de dados migrado do SQL Server, seria melhor não soltar as colunas SSMA_Timestamp.

Do artigo do MSDN Otimizando aplicativos de acesso ao Microsoft Office vinculados ao SQL Server:

Suportando verificações de simultaneidade

Provavelmente, a principal causa de problemas de atualização nas tabelas ligadas ao acesso ao escritório é que o acesso ao escritório não consegue verificar se os dados no servidor correspondem ao que foi recuperado pela última vez pelo dynaset sendo atualizado. Se o acesso ao escritório não puder executar essa verificação, assume que a linha do servidor foi modificada ou excluída por outro usuário e aborta a atualização.

Existem vários tipos de dados que o acesso ao escritório é incapaz de verificar de maneira confiável para obter valores correspondentes. Isso inclui tipos grandes de objetos, como texto, ntext, imagem e tipos varbinários (max), nvarchar (max) e varbinária (max) introduzidos no SQL Server 2005. Além disso, tipos numéricos de ponto flutuante, como real e flutuar, estão sujeitos a problemas de arredondamento que podem tornar as comparações imprecisas, resultando em atualizações canceladas quando os valores não foram realmente alterados. O acesso ao escritório também tem problemas para atualizar tabelas contendo colunas de bits que não possuem um valor padrão e que contêm valores nulos.

Uma maneira rápida e fácil de remediar esses problemas é adicionar uma coluna de registro de data e hora à tabela no SQL Server. Os dados em uma coluna Timestamp não têm relação com a data ou hora. Em vez disso, é um valor binário que é garantido para ser exclusivo em todo o banco de dados e aumentar automaticamente toda vez que um novo valor é atribuído a qualquer coluna da tabela. O termo padrão ANSI para esse tipo de coluna é o RowverSion. Este termo é suportado no SQL Server.

O acesso ao escritório detecta automaticamente quando uma tabela contém esse tipo de coluna e a usa na cláusula WHERE de todas as instruções de atualização e exclusão que afetam essa tabela. Isso é mais eficiente do que verificar se todas as outras colunas ainda têm os mesmos valores que tinham quando o dynaset foi atualizado pela última vez.

O SQL Server Migration Assistant for Office Access adiciona automaticamente uma coluna chamada SSMA_Timestamp a quaisquer tabelas que contenham tipos de dados que possam afetar a atualização.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top