14990 - The INSERT statement conflicted with the CHECK constraint
Problema: Descrição: Em um equipamento Telemática, é necessário alterar o tipo da leitora biométrica para Sagem porém é retornada a mensagem de erro: Erro de acesso ao banco de dados. Não foi encontrado o Registro-Mestre para este Registro..
No SQLMON foi possível identificar a seguinte mensagem:
(...)
ERROR - Error returned from ODBC function SQLExecute in TSqlCommandOdbc.Execute
ODBC Return Code: -1 (SQL_ERROR)
ODBC SqlState: 23000
Native Error Code: 547
Error Message: [Microsoft][SQL Server Native Client 10.0][SQL Server]The INSERT statement conflicted with the CHECK constraint bio_tipo1. The conflict occurred in database Vetorh, table TELESSVR.DAT07, column 'BIO_TIPO'.
Pocedure: , Line: 1
ODBC SqlState: 01000
Native Error Code: 3621
Error Message: [Microsoft][SQL Server Native Client 10.0][SQL Server]The statement has been terminated.
Pocedure: , Line: 1
(...)
Quando ocorre / onde se aplica: Ao tentar alterar o tipo da leitora biométrica para Sagem, fabricante Telemática.
Solução: Solução: Tendo como base a descrição do erro, foi necessário verificar o retorno do comando:
> SELECT name, definition FROM sys.check_constraints WHERE name = 'bio_tipo1' //('bio_tipo1' foi utilizando pois a mensagem informou: CHECK constraint bio_tipo1).
*** Observação: Esse comando deve ser realizado em um aplicativo de banco de dados, pelo CBDS não vai funcionar. ***
Exemplo de retorno: ([BIO_TIPO]='3' OR [BIO_TIPO]='2' OR [BIO_TIPO]='1' OR [BIO_TIPO]='0')
Considerando o retorno de exemplo do comando de consulta, podemos notar que o campo BIO_TIPO pode receber 4 valores: 0, 1, 2 ou 3. O valor referente a tecnologia biométrica Sagem é 6 ou 7.
Isso é causado por um pacote incompleto da Telemática, neste caso deve-se solicitar a Telemática um pacote completo dos tipos de biometria suportados.
Público: Interno, canais/consultores, clientes
No SQLMON foi possível identificar a seguinte mensagem:
(...)
ERROR - Error returned from ODBC function SQLExecute in TSqlCommandOdbc.Execute
ODBC Return Code: -1 (SQL_ERROR)
ODBC SqlState: 23000
Native Error Code: 547
Error Message: [Microsoft][SQL Server Native Client 10.0][SQL Server]The INSERT statement conflicted with the CHECK constraint bio_tipo1. The conflict occurred in database Vetorh, table TELESSVR.DAT07, column 'BIO_TIPO'.
Pocedure: , Line: 1
ODBC SqlState: 01000
Native Error Code: 3621
Error Message: [Microsoft][SQL Server Native Client 10.0][SQL Server]The statement has been terminated.
Pocedure: , Line: 1
(...)
Quando ocorre / onde se aplica: Ao tentar alterar o tipo da leitora biométrica para Sagem, fabricante Telemática.
Solução: Solução: Tendo como base a descrição do erro, foi necessário verificar o retorno do comando:
> SELECT name, definition FROM sys.check_constraints WHERE name = 'bio_tipo1' //('bio_tipo1' foi utilizando pois a mensagem informou: CHECK constraint bio_tipo1).
*** Observação: Esse comando deve ser realizado em um aplicativo de banco de dados, pelo CBDS não vai funcionar. ***
Exemplo de retorno: ([BIO_TIPO]='3' OR [BIO_TIPO]='2' OR [BIO_TIPO]='1' OR [BIO_TIPO]='0')
Considerando o retorno de exemplo do comando de consulta, podemos notar que o campo BIO_TIPO pode receber 4 valores: 0, 1, 2 ou 3. O valor referente a tecnologia biométrica Sagem é 6 ou 7.
Isso é causado por um pacote incompleto da Telemática, neste caso deve-se solicitar a Telemática um pacote completo dos tipos de biometria suportados.
Público: Interno, canais/consultores, clientes