haemdall Posted October 22, 2007 at 03:22 PM Report Share #142102 Posted October 22, 2007 at 03:22 PM Boa tarde Estou a fazer um programa em lazarus e usando o mysql como base de dados e surgiu-me um problema. ao abrir um form onde apenas tenho um dbgrid, era suposto aparecer nessa dbgrid, uma lista que seria o resultado de um comando sql. o problema é que ao "arrancar" o programa, o dbgrid fica vazio. o programa não dá erro, simplesmente não aparece nada no dbgrid. o mais estranho é que estou a usar o mesmo tipo de "regras" que no resto do programa: MySQL50Connection1.open; if sqlquery1.active then sqlquery1.Close; sqlquery1.sql.text:='select cod_estante, nr_seccao, quant_stock, nome from estagio.prod_alocado,estagio.produtos where prod_alocado.nrproduto = produtos.nr_produto'; sqlquery1.open; gostava de saber se alguem me pode dar umas dicas sobre como corrigir este erro. Link to comment Share on other sites More sharing options...
Mikas Posted October 23, 2007 at 01:01 PM Report Share #142384 Posted October 23, 2007 at 01:01 PM Pode não ser... mas confirma se tens a grid bem ligada a um datasource e o datasource ligado ao query Link to comment Share on other sites More sharing options...
haemdall Posted October 24, 2007 at 10:42 AM Author Report Share #142609 Posted October 24, 2007 at 10:42 AM antes de mais ...obrigado por alguem responder...neste caso o agradecimento é para o/a mikas sim...ja verifiquei isso várias vezes e parece que tudo está a funcionar correctamente. ja consegui corrigir esse erro. no entanto o programa tem outra dbgrid e a outra tem outro problema. ao aplicar o comando: MySQL50Connection1.open; if sqlquery1.active then sqlquery1.Close; sqlquery1.sql.text:='select nome, sum(quant_stock)as total from estagio.prod_alocado, estagio.produtos where nrproduto = produtos.nr_produto group by nome'; sqlquery1.open; surge este erro: mysql50connection1: error executing query: you have an error in your sql sybtax; check the manual that corresponds to your mysql server version for the right syntax to use near 'group by nome)' at line 1. o meu orientador disse para eu tentar "manualmente", ou seja com este tipo de linguagem: mysql_init(pmysql(@qmysql)); sock:=mysql_real_connect(pmysql(@qmysql),'localhost','root','eseig','estagio',3306,nil,0); tmp:='select nome, sum(quant_stock)as total from estagio.prod_alocado, estagio.produtos where nrproduto = produtos.nr_produto group by nome'; query:=pchar(tmp); mysql_query(sock,query); recbuf:=mysql_store_result(sock); while(mysql_fetch_row(recbuf)) rowbuf:=mysql_fetch_row(recbuf); showmessage(rowbuf[0]); mas se antes era complicado para mim ...assim é que não chego lá... poderá o problema ser por causa de o comando sql ter um Sum()e a versão que uso não ser a correcta? se for...haverá outra forma de contornar este problema?com outro comando?ou até com outra opção que não a dbgrid? obrigado Link to comment Share on other sites More sharing options...
Mikas Posted October 24, 2007 at 04:09 PM Report Share #142658 Posted October 24, 2007 at 04:09 PM Primeiro, é O Mikas.... Tenta por no select, o nome das tabelas antes do nome do campo... por exemplo: prod_alocado.nome, SUM(produtos.quant_stock)... Por vezes o MySQL "baralha.se" quando o select e feito a varias tabelas e não é especificada a tabela antes do nome do campo... Link to comment Share on other sites More sharing options...
Mikas Posted October 24, 2007 at 04:10 PM Report Share #142659 Posted October 24, 2007 at 04:10 PM Mas já agora... esse erro e mm do MySQL, ou seja... nao tem nada a ver com a dbgrid... Link to comment Share on other sites More sharing options...
haemdall Posted October 24, 2007 at 11:10 PM Author Report Share #142761 Posted October 24, 2007 at 11:10 PM ja tentei colocar à frente do nome do campo, o nome da tabela e o resultado é o mesmo. vou ter mesmo que tentar inserir ocomando manualmente obrigado Link to comment Share on other sites More sharing options...
Frank Posted December 1, 2007 at 07:00 PM Report Share #151623 Posted December 1, 2007 at 07:00 PM amigo, tive um problema parecido uma vez e quando vi era pq a propriedade DataSource do SQLQuery1 estava com o DataSource1, enquanto não era para estar ligado a nenhum DataSource. confere se não é isso... abraços Link to comment Share on other sites More sharing options...
natacha Posted August 20, 2008 at 03:14 PM Report Share #205887 Posted August 20, 2008 at 03:14 PM alguém me pode ajudar com duvidas que tenho relativamente à execução de um programa em lazarus cuja base de dados é mysql? é bastante urgente..obrigada Link to comment Share on other sites More sharing options...
skm Posted August 20, 2008 at 03:54 PM Report Share #205901 Posted August 20, 2008 at 03:54 PM Se não colocares duvidas ninguem te vai ajudar... "There are two kinds of programmers. Those who write something to get the work done and those who want to write good code."João BrandãoWebsite e blog: http://jamab.blogspot.com/ Link to comment Share on other sites More sharing options...
natacha Posted August 23, 2008 at 05:56 PM Report Share #206552 Posted August 23, 2008 at 05:56 PM esta alguem disponivel para me tirar uma duvida sobre um erro que me deu em lazarus? Link to comment Share on other sites More sharing options...
carlosmp70 Posted August 23, 2008 at 11:07 PM Report Share #206593 Posted August 23, 2008 at 11:07 PM Podes tentar apagar os componentes mysql e todos os relacionados com a bd, incluindo o datasource. E voltar a colocá-los no form. Penso que por vezes o lazarus se baralha. Link to comment Share on other sites More sharing options...
marinheiro Posted August 24, 2008 at 10:24 PM Report Share #206704 Posted August 24, 2008 at 10:24 PM alguém me pode ajudar com duvidas que tenho relativamente à execução de um programa em lazarus cuja base de dados é mysql? é bastante urgente..obrigada esta alguem disponivel para me tirar uma duvida sobre um erro que me deu em lazarus? como já alguém respondeu antes, se não colocares as duvidas, não podes esperar respostas... há 10 tipos de pessoas: as que sabem binário e as que não sabem... todas as nossas vidas não passam de release candidates... com o aperfeiçoamento, um dia chegaremos à versão final.. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now