Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.03.2019, 14:49   #1
Влад135
Пользователь
 
Регистрация: 11.02.2018
Сообщений: 48
По умолчанию Ошибка фильтрации базы данных.

При выполнении фильтрации базы данных выходит ошибка "Невозможно выполнить операцию "Like" над System.Int32 и System.String."


сам код выглядит так:

p
Код:
rivate void button7_Click(object sender, EventArgs e)
        {
            oBSHACHISLENNOSTBindingSource.Filter = "[GOD] LIKE'" + textBox1.Text + "%'";
            pOLBindingSource.Filter = "[GOD] LIKE'" + textBox1.Text + "%'";
            pRODOLSZITELNOSTZHISNILETBindingSource.Filter = "[GOD] LIKE'" + textBox1.Text + "%'";
            sMERTNOSTROZHDAEMOSTBindingSource.Filter = "[GOD] LIKE'" + textBox1.Text + "%'";
            vOZRASTBindingSource.Filter = "[GOD] LIKE'" + textBox1.Text + "%'";

        }
    }
}
я не совсем понимаю в чем она, вроде все правильно сделал как ее решить?
Влад135 вне форума Ответить с цитированием
Старый 05.03.2019, 14:51   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

предположу, что поле [GOD] числовое.
и для него операция LIKE недоступна.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 05.03.2019, 15:56   #3
Влад135
Пользователь
 
Регистрация: 11.02.2018
Сообщений: 48
По умолчанию

да в поле god я ввожу данные о годе к примеру 2000
Влад135 вне форума Ответить с цитированием
Старый 05.03.2019, 15:56   #4
Влад135
Пользователь
 
Регистрация: 11.02.2018
Сообщений: 48
По умолчанию

а что тогда можно вместо like поставить
Влад135 вне форума Ответить с цитированием
Старый 05.03.2019, 15:59   #5
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Сообщение от Влад135 Посмотреть сообщение
а что тогда можно вместо like поставить
например,
Код:
BSHACHISLENNOSTBindingSource.Filter = "[GOD] = " + textBox1.Text;
Serge_Bliznykov вне форума Ответить с цитированием
Старый 05.03.2019, 16:33   #6
Влад135
Пользователь
 
Регистрация: 11.02.2018
Сообщений: 48
По умолчанию

Огромное вам спасибо, все заработало!!!
Влад135 вне форума Ответить с цитированием
Старый 05.03.2019, 16:36   #7
Влад135
Пользователь
 
Регистрация: 11.02.2018
Сообщений: 48
По умолчанию

я немного в этом деле простак, хотел узнать а вот если я к примеру в текст бокс ничего не ввожу то у меня выходит ошибка "Синтаксическая ошибка: отсутствует операнд после оператора "="."} как вот сделать чтоб если я ничего не написал выходило сообщение о том что я ничего не ввел?
Влад135 вне форума Ответить с цитированием
Старый 05.03.2019, 16:44   #8
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,830
По умолчанию

Есть такой оператор - условный - if.
p51x вне форума Ответить с цитированием
Старый 05.03.2019, 16:49   #9
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Сообщение от Влад135 Посмотреть сообщение
я немного в этом деле простак, хотел узнать а вот если я к примеру в текст бокс ничего не ввожу то у меня выходит ошибка "Синтаксическая ошибка: отсутствует операнд после оператора "="."} как вот сделать чтоб если я ничего не написал выходило сообщение о том что я ничего не ввел?
попробуйте ПРИМЕРНО такой код:
Код:
private void button7_Click(object sender, EventArgs e)
{
            int num;
            if (int.TryParse( textBox1.Text, out num)){
                        oBSHACHISLENNOSTBindingSource.Filter = "[GOD]  = " + num.toString();
                        pOLBindingSource.Filter = "[GOD]  = " + num.toString();
                        pRODOLSZITELNOSTZHISNILETBindingSource.Filter = "[GOD]  = " + num.toString();
                        sMERTNOSTROZHDAEMOSTBindingSource.Filter = "[GOD]  = " + num.toString();
                        vOZRASTBindingSource.Filter = "[GOD]  = " + num.toString();
            }
            else{
                        MessageBox.Show("Укажите целое значение - требуемый год");
            }
}
Serge_Bliznykov вне форума Ответить с цитированием
Старый 05.03.2019, 17:13   #10
Влад135
Пользователь
 
Регистрация: 11.02.2018
Сообщений: 48
По умолчанию

Ругается на num.toString
Влад135 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Реализовать табличный вывод строк из базы данных с возможностью сортировки и фильтрации Ant12345 Фриланс 2 09.06.2017 02:01
Ошибка Базы Данных (С++) R'nhbyV Помощь студентам 2 02.06.2013 01:43
ошибка базы данных andrewbarys PHP 2 04.02.2013 14:24
Ошибка при создании Базы Данных YaMolekula C/C++ Базы данных 3 31.10.2011 16:03
Ошибка базы данных AlDelta О форуме и сайтах клуба 3 30.01.2008 08:12