выбрать с индексом на DataTable? - PullRequest
0 голосов
/ 12 апреля 2011

После получения DataTable из sqlAdapter я закрываю соединение.Если я преформую SELECT из этой таблицы данных, использует ли select индекс, созданный мной в БД?

какой код мне нужно написать для использования индекса?

Ответы [ 6 ]

2 голосов
/ 12 апреля 2011

Если я понимаю ваш вопрос, вы хотите знать, будет ли индекс, определенный в БД, присутствовать в DataTable?К сожалению, ответ - нет, DataTable отделен от базы данных.

1 голос
/ 12 апреля 2011

Все данные в DataTable соответствуют структуре / данным базы данных, у вас есть именно то, что у вас есть в базе данных.

        DataRow[] dra = datatable.Select("uid > 2");
        foreach (DataRow dr in dra)
        {
            Console.WriteLine(dr["uid"]);
        }
1 голос
/ 12 апреля 2011

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

1 голос
/ 12 апреля 2011
1 голос
/ 12 апреля 2011

A DataTable - это набор данных в памяти. Если вы (под) выбираете после того, как он был извлечен из БД, вы запрашиваете данные в памяти и не используете индекс.

0 голосов
/ 24 января 2018

Выберите все строки в DataTable

int rowNumber DataRow [] foundrow;Строка showString;

foundrow = yourDataSet.Tables ["yourTableName"]. Select ();

Выберите конкретную строку и столбец (ы)

showString = foundrow [rowNumber] [ "yourColumnName"] ToString ();.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...