AJUDA EM ERRO DE SINTAXE EM INSERT INTO! #URGENTE
Oi Pessoal! Estou terminando meu tcc... é para segunda-feira (dia 17 de dezembro), por isso peço uma ajuda rápida rs no máximo até quinta. Então, estou querendo fazer um cadastro, o que é algo bem simples, eu sei! Em todos os meus forms, clientes, caixa, fornecedores, etc. o cadastro funciona perfeitamente, com exceção do form de FUNCIONÃRIOS.
[txt-color=#e80000]Esses são os campos do BD:[/txt-color]
nome
cargo
dtadmissao
telefone
salario
rgfuncionario
cpffuncionario
apelido
lixeira
cep
complemento
bairro
cidade
uf
rua
logradouro
obs
[txt-color=#e80000][b]Este é o código: (O problema é que ele faz a validação até cargo, salário ele nem valida e já dá [Ô]ERRO NA SINTAXE DO INSERT INTO[Ô]!)[/b][/txt-color]
If txtnome.Text = [Ô][Ô] Then
MessageBox.Show([Ô]Digite o nome do funcionário[Ô], [Ô]Cadastro - Alerta[Ô], MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
txtnome.Focus()
Exit Sub
End If
If txtfone.MaskCompleted = False Then
MessageBox.Show([Ô]Digite o telefone de [Ô] + txtnome.Text + [Ô]![Ô], [Ô]Cadastro - Alerta[Ô], MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
txtfone.Focus()
Exit Sub
End If
If txtapelido.Text = [Ô][Ô] Then
MessageBox.Show([Ô]Digite o Apelido de [Ô] + txtnome.Text + [Ô]![Ô], [Ô]Cadastro - Alerta[Ô], MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
txtapelido.Focus()
Exit Sub
End If
If txtdtadmissao.Text <> [Ô][Ô] And IsDate(txtdtadmissao.Text) = False Then
MessageBox.Show([Ô]Digite uma data de admissão válida[Ô] + [Ô]![Ô], [Ô]Cadastro - Alerta[Ô], MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
txtdtadmissao.Clear()
txtdtadmissao.Focus()
Exit Sub
End If
If txtcargo.Text = [Ô][Ô] Then
MessageBox.Show([Ô]Digite o cargo de [Ô] + txtnome.Text + [Ô]![Ô], [Ô]Cadastro - Alerta[Ô], MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
txtcargo.Focus()
Exit Sub
End If
If txtsalario.Text = [Ô][Ô] Then
MessageBox.Show([Ô]Digite o Salário de [Ô] + txtnome.Text + [Ô]![Ô], [Ô]Cadastro - Alerta[Ô], MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
txtsalario.Focus()
Exit Sub
End If
varSql = [Ô]insert into Funcionarios[Ô] & _
[Ô](nome, cpffuncionario, rgfuncionario, telefone, apelido, cargo, dtadmissao, salario, cep, complemento, bairro, cidade, uf, rua, obs, logradouro) values [Ô] & _
[Ô]([ô][Ô] & _
txtnome.Text & [Ô][ô],[ô][Ô] & _
txtcpf.Text & [Ô][ô],[ô][Ô] & _
txtrg.Text & [Ô][ô],[ô][Ô] & _
txtfone.Text & [Ô][ô],[ô][Ô] & _
txtapelido.Text & [Ô][ô],[ô][Ô] & _
txtcargo.Text & [Ô][ô],[ô][Ô] & _
txtdtadmissao.Text & [Ô][ô],[Ô] & _
txtsalario.Text & [Ô],[ô][Ô] & _
txtcep.Text & [Ô][ô],[ô][Ô] & _
txtcomplemento.Text & [Ô][ô],[ô][Ô] & _
txtbairro.Text & [Ô][ô],[ô][Ô] & _
txtcidade.Text & [Ô][ô],[ô][Ô] & _
txtuf.Text & [Ô][ô],[ô][Ô] & _
txtrua.Text & [Ô][ô],[ô][Ô] & _
txtobs.Text & [Ô][ô],[ô][Ô] & _
txtlogradouro.Text & _
[Ô][ô])[Ô]
drFuncionarios.Close()
cmdFuncionarios.Connection = objConecta
cmdFuncionarios.CommandText = varSql
cmdFuncionarios.ExecuteNonQuery()
MessageBox.Show([Ô]Cadastrado com sucesso![Ô], [Ô]Funcionários - Cadastro[Ô], MessageBoxButtons.OK, MessageBoxIcon.Information)
txtnome.Text = [Ô][Ô]
txtcpf.Text = [Ô][Ô]
txtrg.Text = [Ô][Ô]
txtfone.Text = [Ô][Ô]
txtapelido.Text = [Ô][Ô]
txtcargo.Text = [Ô][Ô]
txtdtadmissao.Text = [Ô][Ô]
txtsalario.Text = [Ô][Ô]
txtcep.Text = [Ô][Ô]
txtcidade.Text = [Ô][Ô]
txtcomplemento.Text = [Ô][Ô]
txtbairro.Text = [Ô][Ô]
txtlogradouro.Text = [Ô][Ô]
txtrua.Text = [Ô][Ô]
txtuf.Text = [Ô][Ô]
[txt-color=#e80000]AJUDEM AI, POR FAVOR![/txt-color]
[txt-color=#e80000]Esses são os campos do BD:[/txt-color]
nome
cargo
dtadmissao
telefone
salario
rgfuncionario
cpffuncionario
apelido
lixeira
cep
complemento
bairro
cidade
uf
rua
logradouro
obs
[txt-color=#e80000][b]Este é o código: (O problema é que ele faz a validação até cargo, salário ele nem valida e já dá [Ô]ERRO NA SINTAXE DO INSERT INTO[Ô]!)[/b][/txt-color]
If txtnome.Text = [Ô][Ô] Then
MessageBox.Show([Ô]Digite o nome do funcionário[Ô], [Ô]Cadastro - Alerta[Ô], MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
txtnome.Focus()
Exit Sub
End If
If txtfone.MaskCompleted = False Then
MessageBox.Show([Ô]Digite o telefone de [Ô] + txtnome.Text + [Ô]![Ô], [Ô]Cadastro - Alerta[Ô], MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
txtfone.Focus()
Exit Sub
End If
If txtapelido.Text = [Ô][Ô] Then
MessageBox.Show([Ô]Digite o Apelido de [Ô] + txtnome.Text + [Ô]![Ô], [Ô]Cadastro - Alerta[Ô], MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
txtapelido.Focus()
Exit Sub
End If
If txtdtadmissao.Text <> [Ô][Ô] And IsDate(txtdtadmissao.Text) = False Then
MessageBox.Show([Ô]Digite uma data de admissão válida[Ô] + [Ô]![Ô], [Ô]Cadastro - Alerta[Ô], MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
txtdtadmissao.Clear()
txtdtadmissao.Focus()
Exit Sub
End If
If txtcargo.Text = [Ô][Ô] Then
MessageBox.Show([Ô]Digite o cargo de [Ô] + txtnome.Text + [Ô]![Ô], [Ô]Cadastro - Alerta[Ô], MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
txtcargo.Focus()
Exit Sub
End If
If txtsalario.Text = [Ô][Ô] Then
MessageBox.Show([Ô]Digite o Salário de [Ô] + txtnome.Text + [Ô]![Ô], [Ô]Cadastro - Alerta[Ô], MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
txtsalario.Focus()
Exit Sub
End If
varSql = [Ô]insert into Funcionarios[Ô] & _
[Ô](nome, cpffuncionario, rgfuncionario, telefone, apelido, cargo, dtadmissao, salario, cep, complemento, bairro, cidade, uf, rua, obs, logradouro) values [Ô] & _
[Ô]([ô][Ô] & _
txtnome.Text & [Ô][ô],[ô][Ô] & _
txtcpf.Text & [Ô][ô],[ô][Ô] & _
txtrg.Text & [Ô][ô],[ô][Ô] & _
txtfone.Text & [Ô][ô],[ô][Ô] & _
txtapelido.Text & [Ô][ô],[ô][Ô] & _
txtcargo.Text & [Ô][ô],[ô][Ô] & _
txtdtadmissao.Text & [Ô][ô],[Ô] & _
txtsalario.Text & [Ô],[ô][Ô] & _
txtcep.Text & [Ô][ô],[ô][Ô] & _
txtcomplemento.Text & [Ô][ô],[ô][Ô] & _
txtbairro.Text & [Ô][ô],[ô][Ô] & _
txtcidade.Text & [Ô][ô],[ô][Ô] & _
txtuf.Text & [Ô][ô],[ô][Ô] & _
txtrua.Text & [Ô][ô],[ô][Ô] & _
txtobs.Text & [Ô][ô],[ô][Ô] & _
txtlogradouro.Text & _
[Ô][ô])[Ô]
drFuncionarios.Close()
cmdFuncionarios.Connection = objConecta
cmdFuncionarios.CommandText = varSql
cmdFuncionarios.ExecuteNonQuery()
MessageBox.Show([Ô]Cadastrado com sucesso![Ô], [Ô]Funcionários - Cadastro[Ô], MessageBoxButtons.OK, MessageBoxIcon.Information)
txtnome.Text = [Ô][Ô]
txtcpf.Text = [Ô][Ô]
txtrg.Text = [Ô][Ô]
txtfone.Text = [Ô][Ô]
txtapelido.Text = [Ô][Ô]
txtcargo.Text = [Ô][Ô]
txtdtadmissao.Text = [Ô][Ô]
txtsalario.Text = [Ô][Ô]
txtcep.Text = [Ô][Ô]
txtcidade.Text = [Ô][Ô]
txtcomplemento.Text = [Ô][Ô]
txtbairro.Text = [Ô][Ô]
txtlogradouro.Text = [Ô][Ô]
txtrua.Text = [Ô][Ô]
txtuf.Text = [Ô][Ô]
[txt-color=#e80000]AJUDEM AI, POR FAVOR![/txt-color]
Bom tá mas o erro então não é nem do SQL correto ?
Qual é o tipo do campo ? Textbox, maskedit.....etc...
Qual é o tipo do campo ? Textbox, maskedit.....etc...
Outra sugestão é você fazer isso em um bloco com ELSE
If txtnome.Text = [Ô][Ô] Then
MessageBox.Show([Ô]Digite o nome do funcionário[Ô], [Ô]Cadastro - Alerta[Ô], MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
txtnome.Focus()
ElseIf txtfone.MaskCompleted = False Then
MessageBox.Show([Ô]Digite o telefone de [Ô] + txtnome.Text + [Ô]![Ô], [Ô]Cadastro - Alerta[Ô], MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
txtfone.Focus()
elseIf txtapelido.Text = [Ô][Ô] Then
MessageBox.Show([Ô]Digite o Apelido de [Ô] + txtnome.Text + [Ô]![Ô], [Ô]Cadastro - Alerta[Ô], MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
txtapelido.Focus()
elseIf txtdtadmissao.Text <> [Ô][Ô] And IsDate(txtdtadmissao.Text) = False Then
MessageBox.Show([Ô]Digite uma data de admissão válida[Ô] + [Ô]![Ô], [Ô]Cadastro - Alerta[Ô], MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
txtdtadmissao.Clear()
txtdtadmissao.Focus()
elseIf txtcargo.Text = [Ô][Ô] Then
MessageBox.Show([Ô]Digite o cargo de [Ô] + txtnome.Text + [Ô]![Ô], [Ô]Cadastro - Alerta[Ô], MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
txtcargo.Focus()
elseIf txtsalario.Text = [Ô][Ô] Then
MessageBox.Show([Ô]Digite o Salário de [Ô] + txtnome.Text + [Ô]![Ô], [Ô]Cadastro - Alerta[Ô], MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
txtsalario.Focus()
else
varSql = [Ô]insert into Funcionarios[Ô] & _
[Ô](nome, cpffuncionario, rgfuncionario, telefone, apelido, cargo, dtadmissao, salario, cep, complemento, bairro, cidade, uf, rua, obs, logradouro) values [Ô] & _
[Ô]([ô][Ô] & _
txtnome.Text & [Ô][ô],[ô][Ô] & _
txtcpf.Text & [Ô][ô],[ô][Ô] & _
txtrg.Text & [Ô][ô],[ô][Ô] & _
txtfone.Text & [Ô][ô],[ô][Ô] & _
txtapelido.Text & [Ô][ô],[ô][Ô] & _
txtcargo.Text & [Ô][ô],[ô][Ô] & _
txtdtadmissao.Text & [Ô][ô],[Ô] & _
txtsalario.Text & [Ô],[ô][Ô] & _
txtcep.Text & [Ô][ô],[ô][Ô] & _
txtcomplemento.Text & [Ô][ô],[ô][Ô] & _
txtbairro.Text & [Ô][ô],[ô][Ô] & _
txtcidade.Text & [Ô][ô],[ô][Ô] & _
txtuf.Text & [Ô][ô],[ô][Ô] & _
txtrua.Text & [Ô][ô],[ô][Ô] & _
txtobs.Text & [Ô][ô],[ô][Ô] & _
txtlogradouro.Text & _
[Ô][ô])[Ô]
drFuncionarios.Close()
cmdFuncionarios.Connection = objConecta
cmdFuncionarios.CommandText = varSql
cmdFuncionarios.ExecuteNonQuery()
MessageBox.Show([Ô]Cadastrado com sucesso![Ô], [Ô]Funcionários - Cadastro[Ô], MessageBoxButtons.OK, MessageBoxIcon.Information)
txtnome.Text = [Ô][Ô]
txtcpf.Text = [Ô][Ô]
txtrg.Text = [Ô][Ô]
txtfone.Text = [Ô][Ô]
txtapelido.Text = [Ô][Ô]
txtcargo.Text = [Ô][Ô]
txtdtadmissao.Text = [Ô][Ô]
txtsalario.Text = [Ô][Ô]
txtcep.Text = [Ô][Ô]
txtcidade.Text = [Ô][Ô]
txtcomplemento.Text = [Ô][Ô]
txtbairro.Text = [Ô][Ô]
txtlogradouro.Text = [Ô][Ô]
txtrua.Text = [Ô][Ô]
txtuf.Text = [Ô][Ô]
End If
If txtnome.Text = [Ô][Ô] Then
MessageBox.Show([Ô]Digite o nome do funcionário[Ô], [Ô]Cadastro - Alerta[Ô], MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
txtnome.Focus()
ElseIf txtfone.MaskCompleted = False Then
MessageBox.Show([Ô]Digite o telefone de [Ô] + txtnome.Text + [Ô]![Ô], [Ô]Cadastro - Alerta[Ô], MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
txtfone.Focus()
elseIf txtapelido.Text = [Ô][Ô] Then
MessageBox.Show([Ô]Digite o Apelido de [Ô] + txtnome.Text + [Ô]![Ô], [Ô]Cadastro - Alerta[Ô], MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
txtapelido.Focus()
elseIf txtdtadmissao.Text <> [Ô][Ô] And IsDate(txtdtadmissao.Text) = False Then
MessageBox.Show([Ô]Digite uma data de admissão válida[Ô] + [Ô]![Ô], [Ô]Cadastro - Alerta[Ô], MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
txtdtadmissao.Clear()
txtdtadmissao.Focus()
elseIf txtcargo.Text = [Ô][Ô] Then
MessageBox.Show([Ô]Digite o cargo de [Ô] + txtnome.Text + [Ô]![Ô], [Ô]Cadastro - Alerta[Ô], MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
txtcargo.Focus()
elseIf txtsalario.Text = [Ô][Ô] Then
MessageBox.Show([Ô]Digite o Salário de [Ô] + txtnome.Text + [Ô]![Ô], [Ô]Cadastro - Alerta[Ô], MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
txtsalario.Focus()
else
varSql = [Ô]insert into Funcionarios[Ô] & _
[Ô](nome, cpffuncionario, rgfuncionario, telefone, apelido, cargo, dtadmissao, salario, cep, complemento, bairro, cidade, uf, rua, obs, logradouro) values [Ô] & _
[Ô]([ô][Ô] & _
txtnome.Text & [Ô][ô],[ô][Ô] & _
txtcpf.Text & [Ô][ô],[ô][Ô] & _
txtrg.Text & [Ô][ô],[ô][Ô] & _
txtfone.Text & [Ô][ô],[ô][Ô] & _
txtapelido.Text & [Ô][ô],[ô][Ô] & _
txtcargo.Text & [Ô][ô],[ô][Ô] & _
txtdtadmissao.Text & [Ô][ô],[Ô] & _
txtsalario.Text & [Ô],[ô][Ô] & _
txtcep.Text & [Ô][ô],[ô][Ô] & _
txtcomplemento.Text & [Ô][ô],[ô][Ô] & _
txtbairro.Text & [Ô][ô],[ô][Ô] & _
txtcidade.Text & [Ô][ô],[ô][Ô] & _
txtuf.Text & [Ô][ô],[ô][Ô] & _
txtrua.Text & [Ô][ô],[ô][Ô] & _
txtobs.Text & [Ô][ô],[ô][Ô] & _
txtlogradouro.Text & _
[Ô][ô])[Ô]
drFuncionarios.Close()
cmdFuncionarios.Connection = objConecta
cmdFuncionarios.CommandText = varSql
cmdFuncionarios.ExecuteNonQuery()
MessageBox.Show([Ô]Cadastrado com sucesso![Ô], [Ô]Funcionários - Cadastro[Ô], MessageBoxButtons.OK, MessageBoxIcon.Information)
txtnome.Text = [Ô][Ô]
txtcpf.Text = [Ô][Ô]
txtrg.Text = [Ô][Ô]
txtfone.Text = [Ô][Ô]
txtapelido.Text = [Ô][Ô]
txtcargo.Text = [Ô][Ô]
txtdtadmissao.Text = [Ô][Ô]
txtsalario.Text = [Ô][Ô]
txtcep.Text = [Ô][Ô]
txtcidade.Text = [Ô][Ô]
txtcomplemento.Text = [Ô][Ô]
txtbairro.Text = [Ô][Ô]
txtlogradouro.Text = [Ô][Ô]
txtrua.Text = [Ô][Ô]
txtuf.Text = [Ô][Ô]
End If
Então, to usando access (lixo) mesmo kkk
Ok,
todos são textbox, com exceção de txtcpf e txtdtadmissao que são campos com máscara.
é isso?
Ok,
todos são textbox, com exceção de txtcpf e txtdtadmissao que são campos com máscara.
é isso?
Não funcionou :/
a pergunta correta é qual o tipo do campo no access ( texto, numero, moeda )?
eu reparei que em todos você utilizou o apostrofo, porém no campo salário não, então entenda as regras
campos do tipo texto usa-se o apostrofo ([ô])
campos do tipo integer não se usa acentos
campos do tipo data usa-se o number (#) com o seguinte formato mm/dd/yyyy
verifique isto
ps: se for o caso de serem todos texto então use esta alteração
eu reparei que em todos você utilizou o apostrofo, porém no campo salário não, então entenda as regras
campos do tipo texto usa-se o apostrofo ([ô])
campos do tipo integer não se usa acentos
campos do tipo data usa-se o number (#) com o seguinte formato mm/dd/yyyy
verifique isto
ps: se for o caso de serem todos texto então use esta alteração
...
txtdtadmissao.Text & [Ô][ô],[ô][Ô] & _
txtsalario.Text & [Ô][ô],[ô][Ô] & _
...
Faça seu login para responder