Здравствуйте сделал авторизацию пользователя в программе через бд по логину и паролю.Хотелось чтобы после входа.Выводились данные авторизованного пользователя.Помогите пожалуйста разобраться как можно это реализовать. Вот код авторизации:
using (var con = new SqlConnection(@"Data Source=(LocalDB)\v11.0;AttachDbFilename=C:\Users\User\Desktop\база\Питание.mdf;Integrated Security=True;Connect Timeout=30"))
{
con.Open();
using (var cmd = new SqlCommand("Select Count (1) From Регистрация where Логин=@login and Пароль=@Pass", con))
{
cmd.Parameters.AddWithValue("login", textBox1.Text);
cmd.Parameters.AddWithValue("Pass", textBox2.Text);
var accountsCount = (int)cmd.ExecuteScalar();
if (accountsCount==1)
{
Form5 a = new Form5();
a.label1.Text = accountsCount.ToString();
a.Show();
}
else
{
MessageBox.Show("Неверные данные");
}
}
}
Так же как и с «авторизацией», с помощью SqlCommand
выполняем запрос к таблице, проставляя список нужных столбцов:
using (var cmd = new SqlCommand("Select пол, рост, вес From Регистрация where Логин=@login and Пароль=@Pass", con))
{
Чтобы прочитать результаты используем метод ExecuteReader
, который возвращает объект SqlDataReader
. Этот объект содержит методы по чтению набора данных.
В документации к методу есть пример использования:
SqlDataReader reader = command.ExecuteReader();
while (reader.Read())
{
Console.WriteLine(String.Format("{0}", reader[0]));
}
К столбцам можно обращаться по порядку в запросе (reader[1]
, reader[2]
) так и по именам (reader["пол"], reader["рост"]
, и т.д.). Поэкспериментируйте с запросом и чтением результатов и выберите удобный способ.
З.Ы. Стоит заметить что такая «авторизация» имеет смысл только для Вашего приложения и не защищает от прямого доступа к файлу БД. Для защиты данных устанавливайте сервер и настраивайте встроенную авторизацию. И не храните пароли в открытом виде.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Какие хитрости и просто сложные вещи нужно знать в css ?
Мне надо сделать, чтобы блоки, чьи высоты не превышают самых высоких блоков, ставали друг под друга, а не переносились на новую строчку