Fórum Erro em consulta sql #293826
31/08/2005
0
DM.CdsClientes.CommandText := ´select * from (select * from ftclientes order by codcli desc limit 10 offset 0) as teste order by codcli´;
Meu BD é o Postgresql
Porem me retorna o seguinte erro: List index out of bounds(-1)
O que esta errado?
Abs
Felipeiw
Curtir tópico
+ 0Posts
31/08/2005
Martins
Seu BD tem quantos registros?
pois parece q vc está querendo trazer mais registros do q ha nele, tanto eh q apresentou este erro, informando q a lista de indice está fora do limite.
Gostei + 0
31/08/2005
Felipeiw
Gostei + 0
31/08/2005
Rjun
Gostei + 0
31/08/2005
Felipeiw
DM.CdsClientes.CommandText := ´select * from (select * from ftclientes order by codcli desc limit 10 offset 0) as teste order by codcli´;
DM.CdsClientes.Open;
Neste momento.
Gostei + 0
31/08/2005
Rômulo Barros
O componente TSqlQuery possui a propriedade Sql q é do tipo TStrings, logo poderemos acessá-lo assim:
TSqlQuery.Sql.Add(´primeira linha da SQL´);
Entretanto, se nenhuma linha tiver sido criada e vc tentar acessar assim:
TSqlQuery.Sql[2] := ´Primeira linha da SQL´ irá ser levantado uma exceção q exibirá o erro ListIndexOutOfBonds...
Então.. quando vc faz: TClientDataSet.CommandText := ´Select blá.. blá.. blá... blá...´ .. ... ; automaticamente o TClientDataSet alimenta a propriedade Sql do componente TSqlQuery. ´ACREDITO EU Q SE NÃO POSSUIR NENHUMA LINHA ´ativa´ NO TSQLQUERY, VAÍ DÁ O ERRO Q ACONTECE COM VC.´
[b:b69ce5b692]Solução:[/b:b69ce5b692] ´SE REALMENTE FOR ISSO Q FALEI´, alimente a propriedade SQL do TSqlQuery, e não a propriedade CommandText do TClientDAtaSet. Depois, é só abrir o TClientDataSet.
Ate mais. !!! :wink:
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)