DELIMITAR TAMANHO DO CAMPO EM UMA QUERY
Pessoal bom dia.
Possuo a seguinte Query de Consulta
TRANSFORM FORMAT(MIN(Cred_desc.Valor),[ô]0.00[ô]) AS Valor
SELECT Cred_desc.Mês, Cred_desc.Ano, Funcionários.Código, Funcionários.Nome, Cred_desc.Data
FROM (Funcionários INNER JOIN Cred_desc ON Funcionários.Nome=Cred_desc.Nome) INNER JOIN Convênios ON Cred_desc.[Código convênio]=Convênios.[Código convênio]
GROUP BY Cred_desc.Mês, Cred_desc.Ano, Funcionários.Nome, Funcionários.Código, Cred_desc.Data
ORDER BY Funcionários.Nome
PIVOT Convênios.Desconv;
Ela está funcionando perfeitamente, porém o campo [ô]Convênios.Desconv[Ô] está vindo com o tamanho de 255 caracteres sendo que na verdade ele possui 20 caracteres.
Como contornar esse problema?
Possuo a seguinte Query de Consulta
TRANSFORM FORMAT(MIN(Cred_desc.Valor),[ô]0.00[ô]) AS Valor
SELECT Cred_desc.Mês, Cred_desc.Ano, Funcionários.Código, Funcionários.Nome, Cred_desc.Data
FROM (Funcionários INNER JOIN Cred_desc ON Funcionários.Nome=Cred_desc.Nome) INNER JOIN Convênios ON Cred_desc.[Código convênio]=Convênios.[Código convênio]
GROUP BY Cred_desc.Mês, Cred_desc.Ano, Funcionários.Nome, Funcionários.Código, Cred_desc.Data
ORDER BY Funcionários.Nome
PIVOT Convênios.Desconv;
Ela está funcionando perfeitamente, porém o campo [ô]Convênios.Desconv[Ô] está vindo com o tamanho de 255 caracteres sendo que na verdade ele possui 20 caracteres.
Como contornar esse problema?
Usa o MID MID(Campo,1,20) vai pegar somente 20 caracteres
TRSOFTWARES,
TRANSFORM FORMAT(MIN(Cred_desc.Valor),[ô]0.00[ô]) AS Valor
SELECT Cred_desc.Mês, Cred_desc.Ano, Funcionários.Código, Funcionários.Nome, Cred_desc.Data
FROM (Funcionários INNER JOIN Cred_desc ON Funcionários.Nome=Cred_desc.Nome) INNER JOIN Convênios ON Cred_desc.[Código convênio]=Convênios.[Código convênio]
GROUP BY Cred_desc.Mês, Cred_desc.Ano, Funcionários.Nome, Funcionários.Código, Cred_desc.Data
ORDER BY Funcionários.Nome
PIVOT MID(Convênios.Desconv,1,20)
Também não funcionou o campo continua com 255 caracteres.
TRANSFORM FORMAT(MIN(Cred_desc.Valor),[ô]0.00[ô]) AS Valor
SELECT Cred_desc.Mês, Cred_desc.Ano, Funcionários.Código, Funcionários.Nome, Cred_desc.Data
FROM (Funcionários INNER JOIN Cred_desc ON Funcionários.Nome=Cred_desc.Nome) INNER JOIN Convênios ON Cred_desc.[Código convênio]=Convênios.[Código convênio]
GROUP BY Cred_desc.Mês, Cred_desc.Ano, Funcionários.Nome, Funcionários.Código, Cred_desc.Data
ORDER BY Funcionários.Nome
PIVOT MID(Convênios.Desconv,1,20)
Também não funcionou o campo continua com 255 caracteres.
MID é para dentro do VB ai você tentou coloca-lo dentro da consulta sql... quando você pegar o resultado sql coloque esse campo [ô]Convênios.Desconv[ô] dentro de uma várival qualquer ai sim você use a o MID(xx,1,20) que você irá cortar a váriavel ultilizando apenas os 20 primeiros caracteres...
qual o banco de dados, será que vc não criou o campo para ter 255 caractres,
exemplo se um campo for VARCHAR o tamanho do campo poderé variar deacordo com o conteudo porém se o campo for CHAR(255) se vc colocar 1 caracter ele vai ler 255, eu acho que o problema está ai.
exemplo se um campo for VARCHAR o tamanho do campo poderé variar deacordo com o conteudo porém se o campo for CHAR(255) se vc colocar 1 caracter ele vai ler 255, eu acho que o problema está ai.
que banco está usando?
O banco de dados é ACCESS
é um campo do tipo texto ou memorando?
Tipo Texto
vc tem idéia do numero maximo de caracteres vai usar neste campo, se sim basta vc diminuir o tamanho do texto na tabela
O campo na tabela já tem um número máximo (20 caracteres). Essa Query fica gravada dentro do banco de dados. Eu chamo ela pelo VB com o comando SELECT * FROM ConsultaFP. Ele me retorna a consulta, porém o campo DESCONV vem desconfigurado (ao invés de me retornar uma coluna com 20 caracteres e me retorna com 255).
Tópico encerrado , respostas não são mais permitidas