1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

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

Discussão em 'Programação' iniciada por m4659, 20 de Novembro de 2008. (Respostas: 1; Visualizações: 687)

  1. m4659

    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..
     
  2. kzip

    kzip Power Member

    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.
     

Partilhar esta Página