CAST(campo as BLOB) ???
Oi pessoal! já pesquisei e nao achei nada sobre isso. Preciso (p/ concluir meu SQL) transformar um null num campo BLOB. Ja tentei várias coisas mas nao deu certo. Uso Interbase 6.0. Gostaria de saber se alguem tem alguma dica pra mim resolver esse problema.
Esse é o erro que esta dando::
[color=red:ebee23d05d]Invalid token.
Dynamic SQL Error.
SQL error code = -104.
Invalid command.
Data type unknown.[/color:ebee23d05d]
Este é o meu select::
[color=blue:ebee23d05d]Select c.cod_estab, c.data_ref,
c.codigo, c.conta_contabil,
c.centro_conta, c.contra_partida,
c.centro_contra, c.documento,
c.deb_cred, c.valor,
c.historico,
p.descricao as desc_conta_contabil,
o.descricao as desc_contra_partida,
u.descricao as desc_cod_estab
from cbcadmov c
left join cbplacon o on o.codigo = c.contra_partida
left join cbplacon p on p.codigo = c.conta_contabil
left join utcadest u on u.codigo = c.cod_estab
where c.cod_estab = :cod_estab and
c.data_ref >= :data_ini and
c.data_ref <= :data_fim and
c.conta_contabil >= :conta_ini and
c.conta_contabil <= :conta_fim and
c.conta_contabil not in (´99999999999999999´) and
c.contra_partida not in (´99999999999999999´)
union all
Select CAST(0 as INTEGER) as cod_estab,
CAST(NULL as DATE) as data_ref,
CAST(0 as INTEGER) as codigo,
a.codigo as conta_contabil,
CAST(0 as INTEGER) as centro_conta,
CAST(NULL as VARCHAR(17)) as contra_partida,
CAST(0 as INTEGER) as centro_contra,
CAST(NULL as VARCHAR(10)) as documento,
CAST(NULL as VARCHAR(07)) as deb_cred,
CAST(0 as FLOAT) as valor,
CAST(NULL as BLOB) as historico,[/color:ebee23d05d] [b:ebee23d05d][color=red:ebee23d05d]<---- é nesta linha o problema[/color:ebee23d05d][/b:ebee23d05d]
[color=blue:ebee23d05d]a.descricao as desc_conta_contabil,
CAST(NULL as VARCHAR(50)) as desc_contra_partida,
t.descricao as desc_cod_estab
from cbplacon a
left join utcadest t on t.codigo = :cod_estab
where a.codigo >= :conta_ini and
a.codigo <= :conta_fim and
a.tipo in (´ANALÍTICA´) and
a.codigo not in (Select d.conta_contabil
from cbcadmov d
where d.cod_estab = :cod_estab and
d.data_ref >= :data_ini and
d.data_ref <= :data_fim and
d.conta_contabil >= :conta_ini and
d.conta_contabil <= :conta_fim)
order by 4,2,3[/color:ebee23d05d]
grata,
Esse é o erro que esta dando::
[color=red:ebee23d05d]Invalid token.
Dynamic SQL Error.
SQL error code = -104.
Invalid command.
Data type unknown.[/color:ebee23d05d]
Este é o meu select::
[color=blue:ebee23d05d]Select c.cod_estab, c.data_ref,
c.codigo, c.conta_contabil,
c.centro_conta, c.contra_partida,
c.centro_contra, c.documento,
c.deb_cred, c.valor,
c.historico,
p.descricao as desc_conta_contabil,
o.descricao as desc_contra_partida,
u.descricao as desc_cod_estab
from cbcadmov c
left join cbplacon o on o.codigo = c.contra_partida
left join cbplacon p on p.codigo = c.conta_contabil
left join utcadest u on u.codigo = c.cod_estab
where c.cod_estab = :cod_estab and
c.data_ref >= :data_ini and
c.data_ref <= :data_fim and
c.conta_contabil >= :conta_ini and
c.conta_contabil <= :conta_fim and
c.conta_contabil not in (´99999999999999999´) and
c.contra_partida not in (´99999999999999999´)
union all
Select CAST(0 as INTEGER) as cod_estab,
CAST(NULL as DATE) as data_ref,
CAST(0 as INTEGER) as codigo,
a.codigo as conta_contabil,
CAST(0 as INTEGER) as centro_conta,
CAST(NULL as VARCHAR(17)) as contra_partida,
CAST(0 as INTEGER) as centro_contra,
CAST(NULL as VARCHAR(10)) as documento,
CAST(NULL as VARCHAR(07)) as deb_cred,
CAST(0 as FLOAT) as valor,
CAST(NULL as BLOB) as historico,[/color:ebee23d05d] [b:ebee23d05d][color=red:ebee23d05d]<---- é nesta linha o problema[/color:ebee23d05d][/b:ebee23d05d]
[color=blue:ebee23d05d]a.descricao as desc_conta_contabil,
CAST(NULL as VARCHAR(50)) as desc_contra_partida,
t.descricao as desc_cod_estab
from cbplacon a
left join utcadest t on t.codigo = :cod_estab
where a.codigo >= :conta_ini and
a.codigo <= :conta_fim and
a.tipo in (´ANALÍTICA´) and
a.codigo not in (Select d.conta_contabil
from cbcadmov d
where d.cod_estab = :cod_estab and
d.data_ref >= :data_ini and
d.data_ref <= :data_fim and
d.conta_contabil >= :conta_ini and
d.conta_contabil <= :conta_fim)
order by 4,2,3[/color:ebee23d05d]
grata,
Renata
Curtidas 0
Respostas
Travain
17/12/2003
Renato por você não coloca como VARCHAR(500) ou VARCHAR(1000). As colunas do tipo BLOB são bem mais complicadas de usar do que parece, principalmente em se tratando de um CAST. Experimente mudar.
Até mais.
Até mais.
GOSTEI 0
Renata
17/12/2003
Simplesmente pq. estou usando um UNION e ai dá erro já que no primeiro select o campo historico é BLOB.
Já tentei tb. converter o campo historico p/ varchar(qq. numero) p/ ver se aceitava e tb. nao funcionou.
Já tentei tb. converter o campo historico p/ varchar(qq. numero) p/ ver se aceitava e tb. nao funcionou.
GOSTEI 0
Agnaldo
17/12/2003
Oi pessoal! já pesquisei e nao achei nada sobre isso. Preciso (p/ concluir meu SQL) transformar um null num campo BLOB. Ja tentei várias coisas mas nao deu certo. Uso Interbase 6.0. Gostaria de saber se alguem tem alguma dica pra mim resolver esse problema.
Esse é o erro que esta dando::
[color=red:523f8f843f]Invalid token.
Dynamic SQL Error.
SQL error code = -104.
Invalid command.
Data type unknown.[/color:523f8f843f]
Este é o meu select::
[color=blue:523f8f843f]Select c.cod_estab, c.data_ref,
c.codigo, c.conta_contabil,
c.centro_conta, c.contra_partida,
c.centro_contra, c.documento,
c.deb_cred, c.valor,
c.historico,
p.descricao as desc_conta_contabil,
o.descricao as desc_contra_partida,
u.descricao as desc_cod_estab
from cbcadmov c
left join cbplacon o on o.codigo = c.contra_partida
left join cbplacon p on p.codigo = c.conta_contabil
left join utcadest u on u.codigo = c.cod_estab
where c.cod_estab = :cod_estab and
c.data_ref >= :data_ini and
c.data_ref <= :data_fim and
c.conta_contabil >= :conta_ini and
c.conta_contabil <= :conta_fim and
c.conta_contabil not in (´99999999999999999´) and
c.contra_partida not in (´99999999999999999´)
union all
Select CAST(0 as INTEGER) as cod_estab,
CAST(NULL as DATE) as data_ref,
CAST(0 as INTEGER) as codigo,
a.codigo as conta_contabil,
CAST(0 as INTEGER) as centro_conta,
CAST(NULL as VARCHAR(17)) as contra_partida,
CAST(0 as INTEGER) as centro_contra,
CAST(NULL as VARCHAR(10)) as documento,
CAST(NULL as VARCHAR(07)) as deb_cred,
CAST(0 as FLOAT) as valor,
CAST(NULL as BLOB) as historico,[/color:523f8f843f] [b:523f8f843f][color=red:523f8f843f]<---- é nesta linha o problema[/color:523f8f843f][/b:523f8f843f]
[color=blue:523f8f843f]a.descricao as desc_conta_contabil,
CAST(NULL as VARCHAR(50)) as desc_contra_partida,
t.descricao as desc_cod_estab
from cbplacon a
left join utcadest t on t.codigo = :cod_estab
where a.codigo >= :conta_ini and
a.codigo <= :conta_fim and
a.tipo in (´ANALÍTICA´) and
a.codigo not in (Select d.conta_contabil
from cbcadmov d
where d.cod_estab = :cod_estab and
d.data_ref >= :data_ini and
d.data_ref <= :data_fim and
d.conta_contabil >= :conta_ini and
d.conta_contabil <= :conta_fim)
order by 4,2,3[/color:523f8f843f]
grata,
Vc já Usou o IbExpert?
É uma ferramenta e tanto para FB/IB
GOSTEI 0
Renata
17/12/2003
O que o IBExpert tem haver com isso?!?!?! :evil:
GOSTEI 0
America Informatica
17/12/2003
O que o IBExpert tem haver com isso?!?!?! :evil:
rsrs...
Renata, bom dia! Conseguiu resolver essa questão?
GOSTEI 0