Форум программистов, компьютерный форум, киберфорум
Наши страницы
C# и базы данных, ADO.NET
Войти
Регистрация
Восстановить пароль
 
taras_student
-3 / 0 / 6
Регистрация: 21.06.2015
Сообщений: 152
#1

Как перебрать все данные с таблицы sql? - C#

24.09.2016, 13:23. Просмотров 506. Ответов 2
Метки нет (Все метки)

Создаю форму авторизации.
Есть три формы:вход,регистрация и окно программы.
Это код из формы регистрации, при нажатии кнопки добавляется новая строка в таблицу.
Но как реализовать проверку есть ли уже такие данные в таблице? И нужно ли использовать, алгоритмы поиска по типу бинарного?

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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
private void button1_Click(object sender, EventArgs e)
{
    string connectionString = @"Data Source=Taras\SQLEXPRESS;Initial Catalog=LoginBase;Integrated Security=True";
    SqlConnection sqlConn = new SqlConnection(connectionString);
    sqlConn.Open();
    SqlCommand command = new SqlCommand("insert into initialization values (@log,@pass);", sqlConn);
 
    SqlParameter parametr = new SqlParameter();
 
    parametr.ParameterName = "@log";
    parametr.Value = textBox1.Text;
    parametr.SqlDbType = SqlDbType.VarChar;
    command.Parameters.Add(parametr);
 
    parametr = new SqlParameter();
    parametr.ParameterName = "@pass";
    parametr.Value = textBox2.Text;
    parametr.SqlDbType = SqlDbType.VarChar;
    command.Parameters.Add(parametr);
 
    try
    {
        command.ExecuteNonQuery();
    }
    catch
    {
        
        return;
    }
 
    //command = new SqlCommand("select * from initialization;", sqlConn);
 
    //SqlDataReader reader= command.ExecuteReader();
    //while (reader.Read())
    //{
    //    Console.WriteLine("{0} {1}",reader.GetString(0),reader.GetString(1)); //просто для проверки добавились ли данные в таблицу
        
    //}
 
    this.Hide();
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.09.2016, 13:23
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Как перебрать все данные с таблицы sql? (C#):

Как перебрать все строки MS SQL
Как можно перебрать все строки таблицы в программе, когда нет суррогатного...

Как перебрать все таблицы в базе
Подскажите как правильно сделать. Необходимо загрузить данные в одну таблицу...

как записать данные из таблицы SQL в массив?
Всем привет! У меня есть обычный массив и SQL таблица с данными. Мне надо найти...

Как записать данные из SQL таблицы в массив
У меня вопрос: Я создала клас для сохранения в него SQL таблицы. И потом в...

Как программно вывести данные из таблицы базы ms sql на форму в dataGridView
Ребят, подскажите как программно вывести данные из таблицы базы ms sql на форму...

Как правильно передать данные из таблицы DataGridView в SQL базу данных
Здравствуйте. Есть таблица DataGridView которая содержит данный которые...

2
insite2012
Модератор
Эксперт .NET
4794 / 3753 / 1081
Регистрация: 12.10.2013
Сообщений: 10,991
Записей в блоге: 2
24.09.2016, 16:31 #2
Цитата Сообщение от taras_student Посмотреть сообщение
как реализовать проверку есть ли уже такие данные в таблице?
SQL запросом, очевидно.
Типа такого
SQL
1
SELECT COUNT(*) FROM Users WHERE login=@login AND password=@password
Если запрос вернет 0, то пользователя с такими данными в таблице нет.
0
taras_student
-3 / 0 / 6
Регистрация: 21.06.2015
Сообщений: 152
24.09.2016, 16:43  [ТС] #3
Ну вот я пробовал таким способом. Он работает для определения уже существующего значения, но после проверки почему-то не добавляет новые данные. Не могу поянять почему? command.ExecuteNonQuery(); возвращает 0 и программа переходит в блок catch.

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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
private void button1_Click(object sender, EventArgs e)
{
    string connectionString = @"Data Source=Taras\SQLEXPRESS;Initial Catalog=LoginBase;Integrated Security=True";
    SqlConnection sqlConn = new SqlConnection(connectionString);
    sqlConn.Open();
    SqlCommand command = new SqlCommand("select * from initialization;", sqlConn);
 
    SqlDataReader reader = command.ExecuteReader();
    while (reader.Read())
    {
        if(reader.GetString(0)==textBox1.Text||reader.GetString(1)==textBox2.Text)
        {
            MessageBox.Show("Користувач з таким ім'ям вже зареєстрований в системі");
        } 
    }
 
    SqlCommand command = new SqlCommand("insert into initialization values (@log,@pass);", sqlConn);
 
    SqlParameter parametr = new SqlParameter();
 
    parametr.ParameterName = "@log";
    parametr.Value = textBox1.Text;
    parametr.SqlDbType = SqlDbType.VarChar;
    command.Parameters.Add(parametr);
 
    parametr = new SqlParameter();
    parametr.ParameterName = "@pass";
    parametr.Value = textBox2.Text;
    parametr.SqlDbType = SqlDbType.VarChar;
    
    command.Parameters.Add(parametr);
    
    try
    {
        command.ExecuteNonQuery();
    }
    catch
    {
        
        return;
    }
    this.Hide();
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.09.2016, 16:43
Привет! Вот еще темы с решениями:

Как с помощью MonthCalendar вывести в DataGridView с sql таблицы данные с определенной датой?
Всем доброго времени суток! Подскажите пожалуйста как с помощью MonthCalendar...

Как заполнять таблицы в Windows Forms при условии, что данные нужно вызывать запросом (SQL)?
Какой самый простой способ заполнения таблиц формы при условии, что данные идут...

Не выводятся данные из таблицы БД MS SQL
Пытаюсь вывести данные из таблицы "Владельцы", но выводит только catch......

Как перебрать все элементы любого List без типизации?
Добрый день. Подскажите пожалуйста можно ли как то перебрать все элементы в...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru