pdb 0 Denunciar post Postado Março 31, 2008 Eu estou precisando fazer um sistema de controle de estoque estou utilizando banco de dados em Firebird, no meu sistema estou usando as paletas do DBExpress para conexão com o Banco de dados, a partir desta paleta gostaria de saber como eu posso fazer para incluir dados no banco de dados e pesquisa sql, sendo q o sqlquery q estou utilizando não tem a mesma opção de "Request live" como o query do BDE, como faço para incluir os dados no meu banco de dados utilizando o sqlquery do dbexpress.?? ou se tiver alguma outra alternativa para fazer a inclusão de dados e pesquisas sql sem precisar utilizar o sqlquery, seria ótimo... Valeu...!!! Compartilhar este post Link para o post Compartilhar em outros sites
pdb 0 Denunciar post Postado Abril 1, 2008 Então uma solução foi esta para pesquisa sql com CDS mas não funciona da o seguinte erro: "Project project1.exe raised exception class EDatabaseError with message 'SQLDataSet1:Cannot perform this operation on an open dataset'. Process stopped." Ja tentei tirar o "clientdataset1.open" mas tirando ele quando a gente clica no botão para fazer a pesquisa num acontece nada. alguem sabe me dizer oq estou fazendo de errado?? clientdataset1.Close; clientdataset1.CommandText :=('select * from cliente'); clientdataset1.CommandText :=('WHERE nome LIKE '+#39+'%'+edit2.Text+'%'+#39); clientdataset1.Open; Compartilhar este post Link para o post Compartilhar em outros sites
LHAlmeida 0 Denunciar post Postado Abril 2, 2008 Olá pdb, ao invés de usar o SQLQuery use TSQLDataSet, este sim permite que você salve os dados, porem aconcelho que você pesquise em outros foruns para entender melhor o seu uso, mas resumidamente é assim você precisa de TSQLDataset, TDataSetProvider, TClientdataset e o Tdatasource ligue o dataset ao sua sqlconnection, ligue o datasetprovider ao seu sqldataset, marque a propriedade allow CommandText no clientdataset em ProviderName coloque o nome do seu datasetprovider e finalmente ligue o datasource ao clientdataset quando for passar a querry via commandtext, lembre-se de concatenar a select, pois ela nao funciona como no component sql q pode ir dando o Add linha a linha vou comentar como você fez: clientdataset1.Close; clientdataset1.CommandText :=('select * from cliente'); //colocou "select * from cliente" clientdataset1.CommandText :=('WHERE nome LIKE '+#39+'%'+edit2.Text+'%'+#39); //trocou a commandtext por "where ...." o q nao eh uma sql valida clientdataset1.Open; o correto seria clientdataset1.Close; clientdataset1.CommandText :='select * from cliente'; clientdataset1.CommandText :=clientdataset1.CommandText+'WHERE nome LIKE '+#39+'%'+edit2.Text+'%'+#39); //note a concatenação do que existia em commandtext + o restante da sql q você deseja inserir clientdataset1.Open; para salvar o clientdataset é bem simples clientdataset.post; clientdataset.applyupdates(0); quando for inserir um registro, lembre-se de recuperar o codigo do novo cliente antes de postar, ou faça uma trigger no banco para que seja inserida um codigo para quando o codigo for NULO, se for usar trigger na lista de campos do dataset e do clientdataser marque os required como "false" se não ele nao deixa você postar o codigo NULO abraço ps: aconcelho você a pesquisar um pouco mais sobre o uso de dbexpress, tem muita coisa boa na net Compartilhar este post Link para o post Compartilhar em outros sites
pdb 0 Denunciar post Postado Abril 3, 2008 Amigo, testei da maneira q você me explicou mas num deu certo. o Erro q esta dando eh o seguinte: "EDatabaseError with message 'Token unknown - line 1,char 16 select" Procurei na net mas não consegui achar nada a respeito. Compartilhar este post Link para o post Compartilhar em outros sites
LHAlmeida 0 Denunciar post Postado Abril 4, 2008 Amigo, testei da maneira q você me explicou mas num deu certo. o Erro q esta dando eh o seguinte: "EDatabaseError with message 'Token unknown - line 1,char 16 select" Procurei na net mas não consegui achar nada a respeito. Cole como ficou seu codigo aqui, abraço Compartilhar este post Link para o post Compartilhar em outros sites
pdb 0 Denunciar post Postado Abril 6, 2008 o Amigo, consegui resolver ak... era uma bobeirinha q eu cometi ak... no sqldataset a propriedade commandtype eu tinha colocado cltable, o certo eh clquery. Valeu a ajuda.. muito agradecido... Compartilhar este post Link para o post Compartilhar em outros sites