Проблемы с бд C#

101
03 января 2022, 06:00

Всем привет, суть проблемы то что я делаю "Регистрацию" для этого я делаю проверки что бы небыло одинаковых логинов делаю проверку:

DB db = new DB();
MySqlCommand command = new MySqlCommand("INSERT INTO `users` (`login`, `pass`, `name`, `surname`) VALUES (@login, @pass, @name, @surname)", db.GetConnection());
command.Parameters.Add("@login", MySqlDbType.VarChar).Value = textBox1;
command.Parameters.Add("@pass", MySqlDbType.VarChar).Value = userNameField;
command.Parameters.Add("@name", MySqlDbType.VarChar).Value = userSurname;
command.Parameters.Add("@surname", MySqlDbType.VarChar).Value = textBox2;
db.openConnection();
if (command.ExecuteNonQuery() == 1)
  MessageBox.Show("Аккаунт успешно зарегистрирован");
else
  MessageBox.Show("Аккаунт не зарегистрирован");
db.closeConnection();

У меня выводит какой-то бред типа

System.Windows.Forms.TextBox, Text: Admin

Но если я впишу где textBox1 ".Text" У меня будет все работать как надо но не будет работать проверка, что делать?

Answer 1

вот в этом столбце ставите галочку на Unique Key, MySql проверит является ли данные уникальными, если нет, то выдаст ошибку Чтобы избежать ошибку просто используете в коде try-catch. Именно эту ошибку ищи тут https://metanit.com/sharp/tutorial/2.29.php Или сначала можно с помощью запроса проверить существует ли такое имя и выводить ошибку в Messagebox, но это слишком трудно и нудно

READ ALSO
SESSION не изменяется

SESSION не изменяется

Через fetch в файл сorephp отправляется action, который равен 'login', а так же email и epass

245
Проблема включения Apache в утилите MAMP

Проблема включения Apache в утилите MAMP

Во время нажатия кнопки Start Server загорается зеленый круг на Apache,через 1 секунду уже на MySQL,затем с Apache пропадает зеленый круг и остается только...

194