TDBLOOKUPCOMBOBOK
21/09/2017
0
with dm.sql_statusCliente do
begin
close;
SQL.Clear;
sql.Add('select * from statusCliente');
sql.Add('AND status = id_status');
ParamByName('id_status').Value := DB_combobox.KeyValue;
Open;
end;
end;
Quando escolho umas das 2 opçoes OK ou PENDENTE no combobox que vem da tabela status que e ligada a tabela clientes
e view statusClientes o delphi me retorna o seguinte erro...
---------------------------
[FireDAC][Phys][MySQL] You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'AND status = 1' at line 2.
---------------------------
OK
---------------------------
Anderson Saldanha
Post mais votado
21/09/2017
Esta mensagem mostra que existe um erro de sintaxe no seu SQL. Verifique os espaços entre as instruções. Use o depurador pra debugar e ver o que está retornando na sua instrução SQL usando o Ctrl+F7.
Abraços
Felipe Morais
Mais Posts
21/09/2017
Anderson Saldanha
---------------------------
softarquivo
---------------------------
[FireDAC][Phys][MySQL] You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'AND clientes = 1' at line 2.
---------------------------
OK
---------------------------
begin
with dm.SLQ_clientes do
begin
close;
SQL.Clear;
sql.Add('select * from clientes');
sql.Add('AND clientes = :id_status');
ParamByName('id_status').Value := DB_combobox.KeyValue;
Open;
end;
end;
CREATE TABLE basexml.clientes (
id INT(11) NOT NULL AUTO_INCREMENT,
nome VARCHAR(50) DEFAULT NULL,
cidade VARCHAR(50) DEFAULT NULL,
arquivo VARCHAR(20) NOT NULL,
observacao VARCHAR(50) NOT NULL,
cnpj VARCHAR(15) NOT NULL,
id_status INT(11) DEFAULT NULL,
PRIMARY KEY (id),
UNIQUE INDEX UK_clientes_id_status (id_status),
CONSTRAINT FK_clientes_id_status FOREIGN KEY (id_status)
REFERENCES basexml.status(id_status) ON DELETE NO ACTION ON UPDATE RESTRICT
)
ENGINE = INNODB
AUTO_INCREMENT = 2
AVG_ROW_LENGTH = 8192
CHARACTER SET latin1
COLLATE latin1_swedish_ci;
CREATE TABLE basexml.status (
id_status INT(11) NOT NULL AUTO_INCREMENT,
sts_nome VARCHAR(15) NOT NULL,
PRIMARY KEY (id_status),
UNIQUE INDEX UK_status_sts_nome (sts_nome)
)
ENGINE = INNODB
AUTO_INCREMENT = 3
AVG_ROW_LENGTH = 8192
CHARACTER SET latin1
COLLATE latin1_swedish_ci;
VIEW..
SELECT
`c`.`id` AS `id`,
`c`.`nome` AS `nome`,
`c`.`cidade` AS `cidade`,
`c`.`arquivo` AS `arquivo`,
`c`.`observacao` AS `observacao`,
`c`.`cnpj` AS `cnpj`,
`c`.`id_status` AS `id_status`,
`s`.`sts_nome` AS `sts_nome`
FROM (`clientes` `c`
JOIN `status` `s`
ON ((`c`.`id_status` = `s`.`id_status`)))
21/09/2017
Felipe Morais
begin with dm.SLQ_clientes do begin close; SQL.Clear; sql.Add('select * from clientes'); sql.Add('WHERE clientes = :id_status'); ParamByName('id_status').Value := DB_combobox.KeyValue; Open; end; end;
22/09/2017
Tone Costa.
22/09/2017
Anderson Saldanha
22/09/2017
Anderson Saldanha
begin
with dm.SLQ_clientes do
begin
close;
SQL.Clear;
sql.Add('select * from clientes');
sql.Add('where id_status = :id_status');
ParamByName('id_status').Value := DB_combobox.KeyValue;
Open;
end;
end;
Clique aqui para fazer login e interagir na Comunidade :)