Dificuldade em uma linha de comando no Delphi em um formulário de cadastro
10/05/2019
0
Ola Pessoal estou tendo dificuldade em uma linha de comando no Delphi em um formulário de cadastro.
eu tenho um formulário de cadastro com vários campos para serem preenchido. no total de 19 campos que são:
id
Nome
CPF
Sexo
Endereco
Numero
Complemento
Bairro
Cidade
UF
Cep
Telefone
Celular
Contato
Email
Data_Nasc
Cargo
Usuario
Senha
Porem ao inserir a linha de comando no botão de editar do formulário que é esta:
DM.QryConFuncionarios.Close;
DM.QryConFuncionarios.SQL.Clear;
DM.QryConFuncionarios.SQL.Add(''Update funcionarios set nome=:nome,cpf=:cpf,sexo=:sexo,endereco=:endereco,numero=:numero,complemento=:complemento,bairro=:bairro,cidade=:cidade,uf=:uf,cep=:cep,telefone=:telefone,celular=:celular,contato=:contato,email=:email,data_nasc=:data_nasc,cargo=:cargo,usuario=:usuario,senha=:senha where id=:id'');
Informa o seguinte erro: "String too long at line 588 (588:40)" Porque este erro? uma linha de comando no Delphi tem limite de caracteres
eu tenho um formulário de cadastro com vários campos para serem preenchido. no total de 19 campos que são:
id
Nome
CPF
Sexo
Endereco
Numero
Complemento
Bairro
Cidade
UF
Cep
Telefone
Celular
Contato
Data_Nasc
Cargo
Usuario
Senha
Porem ao inserir a linha de comando no botão de editar do formulário que é esta:
DM.QryConFuncionarios.Close;
DM.QryConFuncionarios.SQL.Clear;
DM.QryConFuncionarios.SQL.Add(''Update funcionarios set nome=:nome,cpf=:cpf,sexo=:sexo,endereco=:endereco,numero=:numero,complemento=:complemento,bairro=:bairro,cidade=:cidade,uf=:uf,cep=:cep,telefone=:telefone,celular=:celular,contato=:contato,email=:email,data_nasc=:data_nasc,cargo=:cargo,usuario=:usuario,senha=:senha where id=:id'');
Informa o seguinte erro: "String too long at line 588 (588:40)" Porque este erro? uma linha de comando no Delphi tem limite de caracteres
José Soares
Curtir tópico
+ 0
Responder
Post mais votado
10/05/2019
basta dividir a instrução em mais linhas. fica mais fácil até para manutenções futuras:
DM.QryConFuncionarios.Close; DM.QryConFuncionarios.SQL.Clear; with DM.QryConFuncionarios.SQL do begin Add('Update funcionarios set '); Add('nome=:nome,cpf=:cpf,sexo=:sexo,endereco=:endereco,numero=:numero,'); Add('complemento=:complemento,bairro=:bairro,cidade=:cidade,uf=:uf,cep=:cep,'); Add('telefone=:telefone,celular=:celular,contato=:contato,email=:email,'); Add('data_nasc=:data_nasc,cargo=:cargo,usuario=:usuario,senha=:senha '); Add('where id=:id'); end;
Emerson Nascimento
Responder
Mais Posts
10/05/2019
José Soares
basta dividir a instrução em mais linhas. fica mais fácil até para manutenções futuras:
DM.QryConFuncionarios.Close; DM.QryConFuncionarios.SQL.Clear; with DM.QryConFuncionarios.SQL do begin Add(''Update funcionarios set ''); Add(''nome=:nome,cpf=:cpf,sexo=:sexo,endereco=:endereco,numero=:numero,''); Add(''complemento=:complemento,bairro=:bairro,cidade=:cidade,uf=:uf,cep=:cep,''); Add(''telefone=:telefone,celular=:celular,contato=:contato,email=:email,''); Add(''data_nasc=:data_nasc,cargo=:cargo,usuario=:usuario,senha=:senha ''); Add(''where id=:id''); end;
Obrigado pela ajuda, fiz como explicado e deu certo, não apareceu a mensagem de limite de string.
Tenho outras duvidas mas vou explicar detalhadamente neste mesmo formulário farei um relato completo explicando. caso poder me ajudar em explicar de como proceder fico muito grato com a ajuda. Obrigado
Responder
10/05/2019
Jonatas Alves
Ola Pessoal estou tendo dificuldade em uma linha de comando no Delphi em um formulário de cadastro.
eu tenho um formulário de cadastro com vários campos para serem preenchido. no total de 19 campos que são:
id
Nome
CPF
Sexo
Endereco
Numero
Complemento
Bairro
Cidade
UF
Cep
Telefone
Celular
Contato
Email
Data_Nasc
Cargo
Usuario
Senha
Porem ao inserir a linha de comando no botão de editar do formulário que é esta:
DM.QryConFuncionarios.Close;
DM.QryConFuncionarios.SQL.Clear;
DM.QryConFuncionarios.SQL.Add(''Update funcionarios set nome=:nome,cpf=:cpf,sexo=:sexo,endereco=:endereco,numero=:numero,complemento=:complemento,bairro=:bairro,cidade=:cidade,uf=:uf,cep=:cep,telefone=:telefone,celular=:celular,contato=:contato,email=:email,data_nasc=:data_nasc,cargo=:cargo,usuario=:usuario,senha=:senha where id=:id'');
Informa o seguinte erro: "String too long at line 588 (588:40)" Porque este erro? uma linha de comando no Delphi tem limite de caracteres
eu tenho um formulário de cadastro com vários campos para serem preenchido. no total de 19 campos que são:
id
Nome
CPF
Sexo
Endereco
Numero
Complemento
Bairro
Cidade
UF
Cep
Telefone
Celular
Contato
Data_Nasc
Cargo
Usuario
Senha
Porem ao inserir a linha de comando no botão de editar do formulário que é esta:
DM.QryConFuncionarios.Close;
DM.QryConFuncionarios.SQL.Clear;
DM.QryConFuncionarios.SQL.Add(''Update funcionarios set nome=:nome,cpf=:cpf,sexo=:sexo,endereco=:endereco,numero=:numero,complemento=:complemento,bairro=:bairro,cidade=:cidade,uf=:uf,cep=:cep,telefone=:telefone,celular=:celular,contato=:contato,email=:email,data_nasc=:data_nasc,cargo=:cargo,usuario=:usuario,senha=:senha where id=:id'');
Informa o seguinte erro: "String too long at line 588 (588:40)" Porque este erro? uma linha de comando no Delphi tem limite de caracteres
Sim, em Delphi um string pode receber de uma só vez até 255 caracteres, ou seja, você não precisa necessariamente quebrar a string em "substrings", você pode por exemplo fazer o seguinte:
procedure TfrmMain.Button1Click(Sender: TObject); var nome: string ; begin nome := 'asdfsakçfljaçsdlkfjaçlskdfjaçlkdsjfalksdjlakdfçlasdj' ; nome := nome + 'kfçlkajskjçkdfldsjdssasdfsakçfljaçsdlkfjaçlskdfjaçlkdsjfalksdjlakdfçlasdjkfçlkajskjçkdfldsjdssasdf' ; nome := nome + 'sakçfljaçsdlkfjaçlskdfjaçlkdsjfalksdjlakdfçlasdjkfçlkajskjçkdfldsjdssasdfsakçfljaçsdlkfjaçlskdfjaçl' ; nome := nome + 'kdsjfalksdjlakdfçlasdjkfçlkajskjçkdfldsjdssasdfsakçfljaçsdlkfjaçlskdfjaçlkdsjfalksdjlakdfçlasdjkfçlkajskjç' ; end;
ir seccionando a string, até atingir o conteúdo desejado!
Boa sorte!
Responder
Clique aqui para fazer login e interagir na Comunidade :)