Ajuda :-- criar subscricao de sql server para sql compact edition(pocket pc)

m4659

Power Member
Boas.
Alguém me pode ajudar com o seguinte erro ao terminar uma subscrição para aplicação mobile, o software que utilizo é o sql server 2005, o sql server 2005 compact edition 3.1.
o erro é o seguinte:
TITLE: Microsoft SQL Server Management Studio
------------------------------

The identity column must be either an integer or big integer data type and cannot be NULL.
HRESULT 0x80004005 (25551)

The SQL statement failed to execute. If this occurred while using merge replication, this is an internal error. If this occurred while using RDA, then the SQL statement is invalid either on the PULL statement or on the SubmitSQL statement.

As tabelas em que obetenho este erro tem um campo declarado da seguinte forma:
[CAMPO] [numeric](12, 0) IDENTITY(1,1) NOT FOR REPLICATION NOT NULL,

cumps..
 
Não conheço essa versão do SqlServer, mas assim pela mensagem parece que o problema é porque o [CAMPO] é do tipo "numeric", enquanto necessita de ser do tipo "int" ou "bigint".

Depende do objectivo, mas nos "merge replication" deve-se evitar sempre que possível as Identity Column que criam chaves (numeração) sequenciais. Podem vir a ser uma dor de cabeça, no caso dos subscritores criarem registos na tabela.
 
Back
Topo