Форум программистов, компьютерный форум, киберфорум
C#: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
1 / 1 / 2
Регистрация: 23.09.2014
Сообщений: 72
PostgreSQL

Фильтрация таблицы: ошибка о несуществующей колонке

14.07.2015, 11:22. Показов 1077. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Достаю из бд таблицу и записываю в DataTable через

C#
1
2
3
4
5
 NpgsqlDataReader reader = Command.ExecuteReader();
            do
            {
                table.Load(reader);
            } while (reader.Read());
Потом, пытаюсь эту таблицу отфильтровать
C#
1
2
3
DataView queryes = new DataView(table);
string  sdf = "";
queryes.RowFilter = "Name = Petr";
В итоге выходит ошибка, о несуществовании колонки. Как быть?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
14.07.2015, 11:22
Ответы с готовыми решениями:

Ошибка проекта в несуществующей строке
Здравствуйте. При попытке запустить проект студия выдает ошибку ссылаясь на строку которой нет в проекте. При двойном щелчке мыши по ошибке...

Ошибка при несуществующей странице
Доброго времени суток. Помогите разобраться с ошибкой Notice: Undefined variable: aid in...

Сортировка содержимого таблицы по колонке
Доброго времени суток. Помогите, может кто знает как можно оргнанизовать сортировку таблицы по цифре. только чтоб автоматически...

9
 Аватар для Cupko
658 / 595 / 171
Регистрация: 17.07.2012
Сообщений: 1,682
Записей в блоге: 1
14.07.2015, 12:29
Alex2671,
C#
1
queryes.RowFilter = "Name = 'Petr'";
Цитата Сообщение от MSDN
Чтобы задать значение свойству RowFilter, нужно указать имя столбца, после которого следует оператор, а затем значение, по которому следует фильтровать. Значение должно быть заключено в кавычки.
0
 Аватар для kodv
1449 / 1121 / 347
Регистрация: 11.04.2011
Сообщений: 2,621
15.07.2015, 06:51
C#
1
2
3
4
5
            NpgsqlDataReader reader = Command.ExecuteReader();
            do
            {
                table.Load(reader);
            } while (reader.Read());

При написание кода не нужно использовать такие методы, как "Метод тыка", "Пальцем в небо" и им подобные. Задумайтесь над тем, что и зачем делает каждая строка вашего кода. Данные действия можно сделать так:
C#
1
table.Load(Command.ExecuteReader());
или, чтобы гарантировать уничтожение Disposable-объекта, так:
C#
1
2
using(NpgsqlDataReader reader = Command.ExecuteReader())
    table.Load(reader);
0
1 / 1 / 2
Регистрация: 23.09.2014
Сообщений: 72
15.07.2015, 08:28  [ТС]
kodv, спасибо за подсказку.

Цитата Сообщение от Cupko Посмотреть сообщение
queryes.RowFilter = "Name = 'Petr'";
Данным образом код тоже не работает. System.Data.EvaluateException: Не удается найти столбец [Name]. Хотя в базе столбец называется также.
0
 Аватар для kodv
1449 / 1121 / 347
Регистрация: 11.04.2011
Сообщений: 2,621
15.07.2015, 08:30
Цитата Сообщение от Alex2671 Посмотреть сообщение
Не удается найти столбец [Name]. Хотя в базе столбец называется также.
Покажите запрос к БД.
0
1 / 1 / 2
Регистрация: 23.09.2014
Сообщений: 72
15.07.2015, 08:38  [ТС]
kodv,
C#
1
2
3
4
5
NpgsqlConnection con = new NpgsqlConnection(Conect);
            con.Open();
            Command.Connection = con;
            table.Load(Command.ExecuteReader());
            con.Close();
просто достаю всю таблицу.
0
 Аватар для kodv
1449 / 1121 / 347
Регистрация: 11.04.2011
Сообщений: 2,621
15.07.2015, 08:42
Alex2671, приведенный вами код ни имеет ни малешйего отношения к тому, что я спрашивал. Ладно, задам вопрос иначе: Чему равны свойства Command.CommandText и Command.CommandType?
0
1 / 1 / 2
Регистрация: 23.09.2014
Сообщений: 72
15.07.2015, 08:44  [ТС]
kodv,
C#
1
NpgsqlCommand com = new NpgsqlCommand("Select * From clientis order by client_id Desc");
А commandtype не имеется.
0
 Аватар для kodv
1449 / 1121 / 347
Регистрация: 11.04.2011
Сообщений: 2,621
15.07.2015, 08:51
Alex2671, значит все таки в базе столбец называется не так. Ну или провайдер Npgsql не умеет получать корректно имена столбцов из запроса, что вряд ли. Проверьте, какие имена столбцов находятся в вашем объекта table. Допустим, выполните такой код:
C#
1
foreach(DataColumn dc in table.Columns) MessageBox.Show(dc.ColumnName);
0
1 / 1 / 2
Регистрация: 23.09.2014
Сообщений: 72
15.07.2015, 09:07  [ТС]
kodv, название колонки выводит и оно правильно , т.е. name
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
15.07.2015, 09:07
Помогаю со студенческими работами здесь

Обратиться к той или иной колонке таблицы
Вот пишу такие строки не работает. Подскажите как правильно DBGrid2->Columns->Visible=true; ...

Можно ли добавить addEventListener к конкретной колонке таблицы?
Подскажите плс, возможно ли добавить addEventListener к конкретной колонке таблицы только в тег tbody, но thead и tfoot не трогать. По...

Как получить значение функции по колонке из таблицы dataset
Уважаемые гуру! Из таблицы dataset можно сделать выборку строк по заданному условию. А как в данном случае оптимально получить, например,...

Нужно реализовать передачу id по двойному нажатию на элемент в колонке таблицы
В проекте есть две формы. На главной(Main) форме есть таблица(dataGridView1), в которой 5 колонок(id:Name:Rating:Words:Reads). На...

Выборка данных из таблицы по колонке X исключая некоторые значения из колонки Y
Не могу разобраться с SQL запросом ввиду своей дилетантности. Условно - нужно выбрать записи из таблицы по колонке X, допустим, колонка...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru