При добавлении в базу из C# Windows.form вместо кириллицы - "?"
Важные моменты кода:
1) Соединение с базой
Код:
SqlCоnnectiоn cn = new SqlConnection(@"Data Source=(LocalDB)\v11.0;AttachDbFilename=#Здесь путь#Database1.mdf;Integrated Security=True;");
SqlCommand cmd = new SqlCommand();
2) Нажатие на кнопку
Код:
cn.Open();
cmd.Cоnnectiоn = cn;
cmd.CommandText = "INSERT INTO Customers (Name) values ('" + NameBox.Text"')";
cmd.ExecuteNonQuery();
cmd.Clone();
Но добавляются знаки вопроса - кодировка у базы ANSI, нужна какая-то другая, видимо (UTF-8, мб)
ВОПРОС: Как сделать так, чтобы добавлялась кириллица, а не "вопросы"
Варианты решений рассматривал:
1) Много встречал ответов, что помогает добавление в ConnectionString "charset=utf8;"
у меня не дает добавить, пишет, что не знает такого ключевого слова.
Видимо, это только для MySQL ConnectionString
2) cmd.CommandText = "SET NAMES 'utf8'";
не помогло
3) cmd.CommandText = "INSERT INTO Customers (Name) val ues (N'" + NameBox.Text"')";
не помогло
4) Тип столбца nvarchar(MAX), ставил другие (nchar, varchar), не помогло
cmd.CommandText = "INSERT INTO Customers (Name) values (@Name)";
cmd.Parameters.AddWithValue("@Name", NameBox.Text);
cmd.ExecuteNonQuery();
Но хорошо. На своих ошибках как говориться.