0

したがって、このクエリをデータベースファイルに挿入します。

UPDATE contas 
SET nome = @nome, endereço = @endereco, serv_envio = @envio, 
    serv_recep = @recep, pass = @pass, user = @user, 
    tipo = @tipo, Seguro = @seguro 
WHERE id = @id

ただし、配置しようとするたびに、次のエラーが発生します。

クエリの解析中にエラーが発生しました。[トークン行番号=1、トークン行オフセット= 101、エラーのトークン=ユーザー]

しかし、1時間後、それが間違っている可能性があることを理解しようとしても、エラーを見つけることができません。

また、ここにデータベースがあります:

テーブル:Contas

列:

  • ID(一次整数自動増加)
  • のめ(テキスト)
  • Endereço(テキスト)
  • Serv_Envio(テキスト)
  • Serv_Recep(テキスト)
  • ユーザー(テキスト)
  • パス(テキスト)
  • ティポ(外国の整数)
  • Defeito(ブール値)
  • セグロ(ブール)

そして、ここにパラメータ化(C#)があります:

command.Parameters.AddWithValue("@nome", tb_nome.Text);
command.Parameters.AddWithValue("@endereco", tb_mail.Text);
command.Parameters.AddWithValue("@envio", tb_envio.Text);
command.Parameters.AddWithValue("@recep", tb_recep.Text);
command.Parameters.AddWithValue("@pass", tb_pass.Text);
command.Parameters.AddWithValue("@user", tb_user.Text);
command.Parameters.AddWithValue("@tipo", cb_tipo.SelectedIndex + 1);
command.Parameters.AddWithValue("@id", idconta);
command.Parameters.AddWithValue("@seguro", seguro);

それで、何か助けはありますか?

前もって感謝します。

ジョアン・ボーレゴ

4

1 に答える 1

2

userは予約語です。試す:

UPDATE contas SET nome=@nome, endereço=@endereco, serv_envio=@envio, 
  serv_recep=@recep, pass=@pass, [user]=@user, tipo=@tipo, Seguro=@seguro 
WHERE id=@id;

または、列の名前を変更します。

于 2012-07-03T19:18:08.460 に答える