Rambler's Top100
Форум: MS ACCESSVBVBA MS OfficeMS SQL server
Новые сообщения: 0000

Форум: MS ACCESS

Вопросы связанные с MS ACCESS

Обновить визитку
Участники «Online»
Все участники

 
 

Доброго времени суток, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: а в чем преимущества - разница....
 
 автор: час   (22.07.2009 в 13:05)   личное сообщение
 
 


rst("YES_OR_NO_CONDITION")

rst!YES_OR_NO_CONDITION

  Ответить  
 
 автор: Анатолий (Киев)   (22.07.2009 в 13:48)   личное сообщение
 
 

rst!YES_OR_NO_CONDITION (надежнее rst![YES_OR_NO_CONDITION]) - общепринятый синтаксис обращение к дочернему элементу объекта. В запросах при обращении к полям формы поддерживается только такой синтаксис.

rst("YES_OR_NO_CONDITION") - самое быстрое обращение к элементу дочернего семейства по умолчанию (если явно, то rst.Fields("YES_OR_NO_CONDITION") ). Кроме того такой синтаксис допускает обращение как по имени, так и по индексу элемента в коллекции, в т.ч. и через переменную. К тому же VBA "в нутрях" преобразует Вид1 в Вид2.

Кстати (сам не так давно узнал), у объекта Recordset есть скрытое св-во Collect, представляющее семейство полей, но с единственным св-вом Value. И это самый-самый быстрый способ прочитать/изменить значение в поле. Т.е.:
v = rst.Collect("YES_OR_NO_CONDITION")
или
rst.Collect(0) = v

  Ответить  
 
 автор: Lukas   (22.07.2009 в 13:48)   личное сообщение
 
 

...
"Оказывается, что "за кулисами" перед выполнением .... синтаксис всегда преобразуется ... (к) скобки с кавычками..."
К. Гетц. стр. 193

  Ответить  
 
 автор: АлексейЕ   (22.07.2009 в 14:02)   личное сообщение
 
 

Выдержка из книги
Пол Литвин, Кен Гетц, Майк Гунделой
ДЛЯ ПРОФЕССИОНАЛОВ
ACCESS 2002
РАЗРАБОТКА НАСТОЛЬНЫХ ПРИЛОЖЕНИЙ


Если снова обратиться к табл. 5.2, вы увидите, что восклицательный знак все¬гда можно заменить на скобки с кавычками. Например, следующие два операто¬ра обращаются к одному и тому же свойству.
cat.Таbles!tblCustomers.Colums!Address.Type
cat.Tables(“tblCustomers”).Colums(“Address”).Type
Оказывается, что “за кулисами” перед выполнением первого из приведенных операторов его синтаксис всегда преобразуется в соответствии со вторым вари¬антом, то есть вместо восклицательного знака употребляются скобки с кавычка¬ми. Поэтому, используя восклицательный знак, вы несколько повышаете темп ввода, за что расплачиваетесь замедлением выполнения. Мы рекомендуем всегда использовать второй вариант синтаксиса, то есть употреблять скобки с кавычка¬ми для обращения к объектам коллекций. Тем более, если имя объекта содержит пробелы или другие нестандартные символы, в случае применения восклица¬тельного знака вам придется заключить имя объекта в квадратные скобки. Это требование не выдвигается, если выбран второй вариант синтаксиса.

ВНИМАНИЕ-------------------------------------------------------------------------------------------------------
Один из случаев, когда вошклицательный знак необходим, является ссылка на поле формы в параметре запроса. В таком ситуации синтакос Forms!ИмяФормы!ИмяЭлементэУправления использо¬вать нельзя.

СОВЕТ--------------------------------------------------------------------------------------------------------------
Трудно избавиться от привычки обращаться к объектам при помощи восклицательного знака — ведь он использовался с первой версии Access. Но на самом деле есть лишь несколько случаев, в ко¬торых этот оператор необходим (как в параметрах запросов), поэтому советуем вам побыстрее отвы¬кнуть от него. Конечно, следует знать, для чего он предназначен, однако пользоваться лучше скоб¬ками с кавычоми.

Есть и еще одна причина, по которой синтаксис («») предпочтительнее синтак¬сиса !. В скобках вы указываете строковое выражение, которое вполне может быть заменено строковой переменной. Данный прием позволяет определять имя объек¬та, к которому вы обращаетесь, во время выполнения программы. Это очень по¬лезная возможность, и мы не раз использовали ее в примерах настоящей книги.

  Ответить  
 
 автор: час   (23.07.2009 в 12:05)   личное сообщение
 
 

Спасибо!!!!!! исчерпывающе

  Ответить  
HiProg.com - Технологии программирования
Rambler's Top100 TopList