Создать таблицу из существующих данных DataTable / Dataset с помощью ADO.net? - PullRequest
1 голос
/ 04 августа 2009

Мне нужно создать две таблицы.

Первый, который я могу получить через базу данных с помощью команды. Никакого пота.

Второй построен из первого с вложенным SELECT операторы, JOIN и операторы, такие как SUM, AVG и т. д. Так что это требует больше функциональности, чем фильтрация и сортировка. Это делается в C # с .NET 2.0, поэтому никаких дополнительных функций имеется.

По сути, я могу выполнить вторую команду, но мне интересно, могу ли я можно обойти это, если у меня уже есть все необходимые данные доступны в DataTable / Dataset?

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

Мне нужны обе таблицы , и на базу данных нельзя влиять. Решение должно использовать только ADO.NET, нет SQL Server или установлены другие инструменты.

Есть ли способ создать новую таблицу с операторами SQL-Like на уже существующие локальные данные и если да, каковы ограничения?

Ответы [ 2 ]

0 голосов
/ 06 августа 2009

Возможно, вам стоит взглянуть на LINQ. Linq-to-datasets является стандартным и позволяет вам запрашивать объект DataTable [n в памяти] с SQL-подобным синтаксисом.

Это выглядит так (простая фильтрация):

var result = from row in yourDataTable.AsEnumerable()
   where row.Field<string>("FieldName").Contains("Something")
   select row;

Агрегации / объединения также разрешены. Вот официальная ссылка от Microsoft.

0 голосов
/ 04 августа 2009

Без каких-либо подробностей трудно ответить на ваш вопрос, но вы должны рассмотреть Фильтрация и сортировка . Это позволяет создавать представления вашего набора данных без запроса источника данных.

...