2015-02-17 2 views
0

У меня есть проблема, я не могу видеть, что этоSql вставки System.Data.SqlClient.SqlException

SqlConnection con = new SqlConnection(); 
     con.ConnectionString = "Data Source=(local);Initial Catalog=MyDb;Integrated Security=True"; 
     con.Open(); 
     SqlCommand cmd = new SqlCommand("insert into User(Username,Password,Firstname,Lastname,Email) VALUES(@user,@pass,@fname,@lname,@emai)", con); 
     cmd.Parameters.AddWithValue("@user", TxtUserN.Text); 
     cmd.Parameters.AddWithValue("@pass", txtpass.Text); 
     cmd.Parameters.AddWithValue("@fname", txtFName.Text); 
     cmd.Parameters.AddWithValue("@lname", txtLName.Text); 
     cmd.Parameters.AddWithValue("@emai", TxtEmail.Text); 
     cmd.ExecuteNonQuery(); 
     MessageBox.Show("You are registered"); 

Я получаю ошибку о том, что у меня есть

необработанное исключение типа «System. Data.SqlClient.SqlException» произошло в System.Data.dll

Дополнительная информация:

Неверный синтаксис рядом с ключевым словом «Пользователь».

Мой дб

[ID] 
     ,[Username] 
     ,[Password] 
     ,[Firstname] 
     ,[Lastname] 
     ,[Email] 
    FROM [MyDb].[dbo].[User] 
+0

что ваше имя Таблица? –

+0

Вы пробовали поймать исключение, чтобы увидеть подробности? – Coda17

+0

@ jannagy02 проблема в том, что пользователь зарезервировал ключевое слово. –

ответ

1

User это ключевое слово, должно быть заключено в кавычки:

insert into [User] (Username,Password,Firstname,Lastname,Email) VALUES(@user,@pass,@fname,@lname,@emai) 

Кроме того, никогда не храните пароли в незашифрованном виде. Используйте salted cryptographic hash.

+0

Спасибо, что вам нужна помощь, и да, я загляну в засоленный криптографический хеш, это было просто начало на нем – Kalle

0

Пользователь зарезервированное ключевое слово в SQL так попробовать запрос типа:

insert into [User] (Username,Password,Firstname,Lastname,Email) 
VALUES(@user,@pass,@fname,@lname,@emai) 

Вот список зарезервированных ключевых слов в SQL =>link

+0

Спасибо, что вам нужна помощь – Kalle

Смежные вопросы