Новый текст команды возвращает данные со схемой, отличной от схемы основного запроса.Проверьте текст команды вашего запроса, если это не нужно - PullRequest
1 голос
/ 19 января 2012

The new command text returns data with schema different from the schema of the main query. Check your query's command text if this is not desired.

Я получаю это предупреждение, когда добавляю запрос в Strongly Typed DataSet, который возвращает один столбец

Пример

`SELECT DISTINCT Building
 FROM            Room
 ORDER BY Building

когда я дам этот запрос, он выдаст мне предупреждение.

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

Ответы [ 2 ]

1 голос
/ 23 октября 2013

При поиске значений DISTINCT схема будет отличаться от ОСНОВНОГО запроса.Основной запрос обычно охватывает всю структуру для подключения к формам.Я (например) хочу, чтобы значения DISTINCT из всех записей заполняли поле со списком.Это НЕ возможно из-за ошибок схемы.Предполагать, что никому не нужно будет использовать значения DISCTINCT для заполнения поля со списком или списком, было бы неосведомленно.

Суть в том, что нужно создать новый TableAdapter или выполнить цикл по набору данных и заполнить ваше объединение уникальным значением.

Возможность добавления нескольких запросов (либо FillBy, либо GetBy) для возврата строк или отдельных значений без необходимости беспокоиться о схеме решит множество проблем.

0 голосов
/ 19 января 2012

Вы должны сконфигурировать этот запрос в TableAdapter, чтобы он возвращал скалярное (одиночное) значение вместо возврата строк. В противном случае TableAdapter пытается применить ту же схему, что и в вашем основном запросе.

Согласно вашему комментарию:

"В дополнение к стандартной функциональности DataAdapter, TableAdapters предоставляют дополнительные типизированные методы, которые инкапсулируют запросы, которые разделяют общую схему со связанной типизированной DataTable. Другими словами, вы можете иметь столько запросов, сколько хотите в TableAdapter до тех пор, пока они возвращают данные, соответствующие одной и той же схеме . "

Вам либо нужно создать другой TableAdapter с другой схемой (один столбец), либо вы продолжаете возвращать все столбцы вашего основного запроса и выбираете тот столбец, который вам нужен (например, со свойством DisplayMember ComboBox ).

...