Estou com uma dificuldade no delphi (sou iniciante)

11/04/2017

0

eu estou passando parâmetros para meu client dataset porem ele retorna erro.

cInc.Close;
cInc.CommandText :='Insert Into Usuario (ID, Login, Senha, Nome, CodGrupo, Funcao) Values ( ( Select Max(ID)+1 From Usuario), ' +
'Login ' + edLogin.Text + ',' +'Senha ' + edSenha.Text + ',' +'Nome ' + edNome.Text + ',' +
'CodGrupo ' + edGrupo.Text + ',' + 'Funcao '+ edFuncao.Text +')' ;
cInc.Open;
cInc.Append;

a onde estou errando?
Matheus Quandt

Matheus Quandt

Responder

Post mais votado

11/04/2017

Boa tarde,
Vocês esta replicando as palavras login, senha e nome tanto no set quando nos values.
Seus values devem conter somente os valores e não os nomes das colunas que quer setar. Isso : 'Login ' + edLogin.Text deve ser apenas isso edLogin.Text, ao colocar os valores lembre de colocar o quotedstr.
Se desejar utilizar como paramentro faça assim :

Insert Into Usuario 
  (ID, Login, Senha, Nome, CodGrupo, Funcao) 
Values ( ( Select Max(ID)+1 From Usuario), :Login, :Senha, :Nome, :CodGrupo, :Funcao)


em seguida utilize o paramByName para setar os parâmetros desejados


Espero ter ajudado.

Gutierry Pereira

Gutierry Pereira
Responder

Mais Posts

11/04/2017

Raylan Zibel

Se está conectado num provider, precisa ir no options dele e habilitar o poAllowCommandText.
Se é um clientdataset sem conexao, precisa chamar o metodo CreateDataSet e passar valores pros Fields do Client.
Responder

11/04/2017

Raylan Zibel

Se é um insert, faça diretamente na Query/Dataset.

Isso não faz sentido:
cInc.Open;
cInc.Append;
Responder

11/04/2017

Matheus Quandt

Muito obrigado realmente me Ajudou
Gutierrydsn
Responder

11/04/2017

Matheus Quandt

Raylan obrigado tbm.

eu ja havia visto isso tbm
foi um descuido mesmo assim muito obrigado a vcs
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar