Форум программистов, компьютерный форум, киберфорум
C#: Базы данных, ADO.NET
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.68/25: Рейтинг темы: голосов - 25, средняя оценка - 4.68
0 / 0 / 0
Регистрация: 07.01.2016
Сообщений: 49
1

Вывод значения из БД в messagebox

10.10.2017, 20:25. Показов 4778. Ответов 7
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Делаю форму авторизации и как реализовать одну штуку,подскажите,пожалуйста. Когда человек нажимает войти,выводилось сообщение: "Вы вошли как (имя человека из бд)"
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
private void button1_Click(object sender, EventArgs e)
        {
            int count = 0;
            SqlConnection connection = new SqlConnection("Initial Catalog=Авторизация;Integrated Security=True");
            using (SqlCommand command = new SqlCommand("select * from Пользователи where [user] = @par1 and password = @par2", connection))
            {
                command.Parameters.AddWithValue("@par1", textBox1.Text);
                command.Parameters.AddWithValue("@par2", textBox2.Text);
                connection.Open();
                using (SqlDataReader reader = command.ExecuteReader())
                {
                    while (reader.Read())
                        count += 1;
                    MessageBox.Show("Вы вошли как ");
                }
                connection.Close();
            }
            if (count == 0)
            {
                MessageBox.Show("Логин или пароль неверны! Введите данные снова!");
                return;
            }
            this.Hide();
            Form2 f2 = new Form2();
            f2.Show();
        }
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.10.2017, 20:25
Ответы с готовыми решениями:

Вывод значения типа int с помощью MessageBox
Здравствуйте! Изучаю C++ очень мало ( ~2-3 часа ) и создаю консольную игру. Мне надо вывести...

Вывод messagebox
Необходимо вывести сообщение в messagebox,после выоа программа должна работать недожидаясь никаких...

Вывод числа в MessageBox
Помогите пожалуйста. Хочу чтобы число 5 показалось в MessageBox. Вот что выходит:...

Вывод информации в MessageBox
Есть запись информации в таблицу (привязана БД) , первичный ключ заполняется автоматически и его...

7
653 / 589 / 171
Регистрация: 17.07.2012
Сообщений: 1,670
Записей в блоге: 1
10.10.2017, 20:47 2
Zvuk9,
C#
1
MessageBox.Show(string.Format("Вы вошли как {0}", reader["user"]));
0
0 / 0 / 0
Регистрация: 07.01.2016
Сообщений: 49
10.10.2017, 21:01  [ТС] 3
Cupko, выбивает ошибку:"Недопустимая попытка чтения при отсутствии данных." Хотя все верно ввожу,в чем проблема?
0
653 / 589 / 171
Регистрация: 17.07.2012
Сообщений: 1,670
Записей в блоге: 1
10.10.2017, 21:04 4
Zvuk9, а вы только одну строку заменили, под номером 14 в вашем примере?
0
0 / 0 / 0
Регистрация: 07.01.2016
Сообщений: 49
10.10.2017, 21:04  [ТС] 5
Cupko, да
0
653 / 589 / 171
Регистрация: 17.07.2012
Сообщений: 1,670
Записей в блоге: 1
10.10.2017, 21:06 6
Ах, вижу:
C#
1
2
3
4
5
while (reader.Read())
{
     count += 1;
     MessageBox.Show(string.Format("Вы вошли как {0}", reader["user"]));
}
либо внутри while запишите куда-нибудь значение. Хотя тут как-то по-колхозному выглядит. Вам нужен while? вы количество юзеров одинаковых считаете что-ли?
0
0 / 0 / 0
Регистрация: 07.01.2016
Сообщений: 49
10.10.2017, 21:09  [ТС] 7
Cupko, нет,не считаю. А просто хочу вывести сообщение о том,что человек успешно авторизовался,как "значение из бд".
0
653 / 589 / 171
Регистрация: 17.07.2012
Сообщений: 1,670
Записей в блоге: 1
10.10.2017, 21:13 8
Лучший ответ Сообщение было отмечено Zvuk9 как решение

Решение

Zvuk9,
C#
1
2
3
4
5
6
7
8
9
10
11
using (SqlDataReader reader = command.ExecuteReader())
{
     if (reader.Read()) //Если удалось прочитать первую строку из результата (читай: если есть 1ая строка)
     {
          MessageBox.Show(string.Format("Вы вошли как {0}", reader["user"]));
     }
     else
     {
          MessageBox.Show("Логин или пароль неверны! Введите данные снова!");
     }
}
так, наверное, будет более правильно, и count вам не нужен.
1
10.10.2017, 21:13
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.10.2017, 21:13
Помогаю со студенческими работами здесь

Вывод строки в MessageBox.
Пользуюсь Delphi XE. При попытке вывести содержимое переменной типа string в сообщении MessageBox'a...

Вывод числа в MessageBox
Подскажите, как привести число к типу string и вывести в MessageBox private: System::Void...

Умножение и вывод в MessageBox
Перемножаю числа 60*60*60*24*256 и не получается вывести результат в MessageBox. .386 .model...

Вывести значения двух переменных в MessageBox
Как вывести 2 переменные в MessageBox? TCHAR buf = {0}; _stprintf(buf, TEXT("%d"),...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru