2010-05-13 1 views

ответ

5

первый столбец из набора записей (0) является первым (1) является второй и т.д. и т.п.

пример, если это ваш запрос

select LastName, FirstName 
from YourTable 

В этом случае s.Fields (0) возвращают бы колонка ЬазШат и rs.Fields (1) будет возвращать столбец ПгвЬЫат

+0

извините, можете вам привести пример –

3

Он вытаскивает первый столбец из текущей строки в результирующем наборе.

Fields(x) позволяет доступ к полям числового индекса, начиная с 0.

Edit:

Пример:

Если результат имеет два столбца: foo и bar ..

rs.Fields(0) вернет значение из колонки,

и

rs.Fields(1) возвратит значение колонны bar.

+0

Извините, можете вам привести пример –

+0

@every_answer_gets_a_point - см. Мое редактирование для примера. Не уверен, что я могу сделать это более ясным, чем это. Представьте, что столбцы в текущей строке подобны массивам, которые также индексируются начиная с 0. – Matt

1

Я бы никогда не использовал этот синтаксис. Это зависит от запроса всегда с тем же полем в первом положении.

Кроме того, это спасет только минутное время. (Как и в миллисекундах, если не меньше.)

Пожалуйста, для любви к Богу, за правильную практику программирования, измените это, чтобы использовать имя поля. Это почти, но не совсем, принадлежит на сайте www.dailywtf.com.

+0

Согласовано, это не нормально видеть. Единственный раз, когда я когда-либо использовал это, - это во время цикла, который открыл инструкцию SQL и затем зациклился, и только он сохранил бы часть миллисекунды, поэтому, если вы делаете это только один раз, нет смысла. Также я могу добавить, что есть комментарий прямо над строкой в ​​моем цикле, чтобы объяснить, что номера полей помогут будущей отладке! –

+0

«Никогда, никогда» кажется немного сильным. В этом случае я считаю, что он используется для получения последнего вставленного @identity. Доступ также может использоваться для анализа данных и очистки данных, где вам может понадобиться «для каждого поля в каждой таблице». – Fionnuala

+0

Я почтительно не согласен с вашим первым предложением. В этом случае я никогда не использовал бы такой синтаксис.Теперь, когда ваше второе предложение прекрасное, когда вы перебираете все поля, тогда да, но это явно не так. Я использовал этот синтаксис myuself для 500-строчной подпрограммы, которая экспортирует содержимое набора записей в Excel и делает много очистки и форматирования. Но это не относится к исходному коду. –

Смежные вопросы