Tenho uma tabela em access vinculada ao SQL. Estou fazendo uma consulta onde estou utilizando um campo chamado comment desta tabela. O campo é projetado em SQL como nvarchar(255) . Estou escrevendo números inteiros neste campo. O que eu quero fazer na minha consulta é converter este campo de nvarchar para int para que eu possa usar a função SUM. Alguém pode ajudar?
relate perguntas
-
Obtenha dados do banco de dados e coloque-os de volta em uma nova folha de dados
-
O MS Access exibe todas as colunas nas tabelas do SQL Server como "excluídas"
-
Questão de simultaneidade?
-
Usando uma consulta de parâmetro para gerar gráficos em relatórios do MS Access
-
Consultar o banco de dados Linked Access no compartilhamento de rede via SQL Job Agent
Aqui estão algumas opções.
Sintaxe
Convertendo para um tipo de dados inteiro
A função CInt recebe um valor numérico ou de string e o converte em um tipo de dados Integer. O argumento é obrigatório e precisa representar um valor dentro do intervalo de -32.678 a 32.767. Se o argumento contiver um decimal, o Access arredondará para o próximo número inteiro. Um valor de 0,5 ou superior é arredondado para cima; qualquer coisa menor é arredondada para baixo. Seguem alguns exemplos de funções CInt:
Em SQL, você pode usar CAST.
Ou, se você quiser SOMAR a consulta SQL.
Talvez você deva armazenar os dados no SQL Server como um
INT
campo, em vez de umVARCHAR(255)
campo?Se você fizer isso, não precisará fazer nenhuma conversão no Access.
Dito isto, se você não quiser fazer alterações no banco de dados SQL Server, você pode usar CInt(field) do VB em consultas do Access para converter números armazenados como uma string em inteiros. Esteja ciente de que essa abordagem falhará se houver valores não numéricos armazenados no campo varchar.