Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Erro do MS Access ODBC--falha na chamada. Valor de caractere inválido para especificação de conversão (#0)


Hum, eu verificaria o padrão da caixa de texto no lado de acesso. Eu também traria a tabela vinculada no modo de design e você deseja verificar o tipo de dados que o ms-access assume aqui. Para tipos de dados não suportados, o ms-access geralmente usa uma string, e o sql server pode estar querendo outra coisa.

Portanto, verifique a chave primária (PK) na tabela principal e, em seguida, verifique o tipo de dados usado (assumido) na tabela filho para a coluna de chave estrangeira (FK). Enquanto estamos nisso, verifique suas expressões usadas para as configurações de link filho/mestre no controle de subformulário (não no formulário, não no subformulário, mas no controle de subformulário usado em seu formulário que liga essas duas tabelas ).

Os subformulários de acesso são sensíveis se você não tiver uma coluna de carimbo de data/hora na tabela do sql server. Como mencionado, verifique os tipos de dados PK e FK e certifique-se de que eles correspondem (basta abrir as tabelas no modo de design no ms-access - você recebe uma mensagem de erro sobre o modo de design ser somente leitura, mas continue para que você pode verificar/visualizar para garantir que os tipos de dados correspondam).

Portanto, para a tabela filha, você precisa de uma coluna PK, FK e também de timestamp (você não precisa exibir a coluna TS no subformulário, mas precisa dela na tabela).

Os subformulários no ms-access são sensíveis e geralmente falham se você não incluir uma coluna de carimbo de data/hora na tabela sql. (o acesso usa essas colunas de versão de linha para determinar se os dados foram alterados).