DELIMITAR TAMANHO DO CAMPO EM UMA QUERY

MARCOSREZENDE 02/04/2012 11:15:34
#398917
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?
TRTNCG 02/04/2012 11:25:27
#398918
Usa o MID MID(Campo,1,20) vai pegar somente 20 caracteres
MARCOSREZENDE 02/04/2012 11:35:41
#398921
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.
NALDOXD 02/04/2012 12:26:16
#398927
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...
MARCELO.TREZE 02/04/2012 13:01:14
#398932
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.

TRTNCG 02/04/2012 13:11:27
#398933
que banco está usando?
MARCOSREZENDE 02/04/2012 13:24:50
#398935
O banco de dados é ACCESS
MARCELO.TREZE 02/04/2012 13:58:01
#398937
é um campo do tipo texto ou memorando?
MARCOSREZENDE 02/04/2012 14:37:56
#398945
Tipo Texto
MARCELO.TREZE 02/04/2012 14:43:50
#398947
vc tem idéia do numero maximo de caracteres vai usar neste campo, se sim basta vc diminuir o tamanho do texto na tabela
MARCOSREZENDE 02/04/2012 14:58:38
#398952
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).
Página 1 de 2 [12 registro(s)]
Tópico encerrado , respostas não são mais permitidas