Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Работа с записями базы данных




Td.Indexes. Delete idxNew. Name

Dim DB As DataBase, Td As TableDef, NewIdx As Index, NewFld_ As Field

Set Db = DBEngine. Workspace(0). OpenDatabase _ (“C:\Biblioteca.mdb”)

Set Td = DB. TableDefs (“Authors”)

Set NewIdx = Td. CreateIndex (“Address_Index”)

NewIdx. Unique = False

Set NewFld = NewIdx. CreateField (“Address”, dbText, 30)

NewIdx. Unique = False

NewIdx. Fields. Append NewFldдобавить поле к объекту Index

Td. Indexes. Append NewIdxдобавить объект Index к TableDef

Db. CloseЗакрыть базу данных

 

4. Для удаления таблицы используется метод Delete коллекции TableDefs. Этот метод удаляет из таблицы все поля, индексы и данные, содержащиеся внутри таблицы. Например:

Db.TableDefs. Delete “Authors”

5. Для удаления поля (объекта Field)используется метод Delete коллекции Fields

Td. Fields. Delete “Author”

 

Для удаления индексированного поля необходимо сначала удалить индекс, а также созданные посредством этого индекса объекты Relation. После этого можно будет удалить объект Field или объект TableDef, который является частью отношения.

 

6. Для удаления индекса используется метод Delete коллекции Indexes. Например:

или

Db. TableDefs (“Authors”). Indexes. Delete “Address_Index” ‘ Из коллекции Indexes в таблице Authors удаляется индекс “Address_Index”.

Нельзя удалять объект Index, который формирует объект Relation.

 

7. Для изменения поля необходимо создать новый объект TableDef, который отражает требуемые изменения в описании полей, и затем переместить данные в новую таблицу, удалив старую.

 

Модификацию базы данных можно также проводить с помощью специальных DDL - запросов SQL (CREATE – создание новых таблиц, полей и индексов; DROP – удаление таблиц и индексов из базы данных; ALTER – модификация таблиц за счет добавления новых полей или изменения описаний существующих полей).

 

Работа с записями базы данных (добавление, удаление, модификация, поиск, сортировка) осуществляются DAO посредством объекта Recordset. Объект Recordset представляет записи исходной таблицы или записи, получаемые в результате выполнения запроса. Существуют 5 типов объектов Recordset:

* Объект Recordset типа table (dbOpenTable) работает с локальной таблицей базы данных или внешней базы данных, созданной MS Jet. Это набор записей, представляющий единственную таблицу базы данных, в которой можно добавлять, изменять или удалять записи. Этот объект можно индексировать, используя индекс, созданный для исходной таблицы, что намного ускоряет сортировку и поиск по сравнению с другими типами объектов Recordset.

* Объект Recordset типа dynaset (dbOpenDynaset) -динамический набор записей, который создается для локальных или связанных таблиц или по результатам запросов. Фактически, это набор ссылок на записи одной или более таблиц. С помощью dynaset можно получать и модифицировать данные более, чем одной таблицы, включая связанные таблицы из других баз данных. Набор dynaset и его исходные таблицы модифицируют друг друга. Dynaset - наиболее гибкий и мощный тип набора записей, хотя поиск в них работает не так быстро, как в случае table.

* Объект Recordset типа snapshot (dbOpenSnapshot) - моментальный снимок таблицы со всеми ее полями, содержит фиксированную копию данных в состоянии на момент создания snapshot. Объект Snapshot, созданный на базе источника данных MS Jet, не может быть обновлен. Snapshot требует меньших затрат на обработку, чем dynaset или table, и запросы в них выполняются быстрее. Может быть использован для быстрого поиска данных или генерации отчетов.

* Объект Recordset типа forward- only (dbOpenForwardOnly) - листаемый только вперед снимок - обеспечивает подмножество функций snapshot. Он предоставляет меньше всего возможностей, но зато самое высокое быстродействие. Он не является обновляемым, и позволяет перемещаться по записям только в прямом направлении. В каждый момент времени существует только одна запись набора. Поэтому для данного типа нельзя использовать методы MovePrevious, MoveFirst, MoveLast.

* Объект Recordset типа dynamic (dbOpenDynamic) - результирующий набор запроса одной или нескольких исходных таблиц, в котором можно добавлять, изменять или удалять записи. Эффективно используется при работе в многопользовательском режиме.

Выбор того или иного типа набора записей зависит от того, какие функции необходимо выполнить, нужно ли изменять или просто просматривать данные. Обычно объект Recordset типа table почти всегда обеспечивает наивысшую эффективность.

 




Поделиться с друзьями:


Дата добавления: 2014-12-10; Просмотров: 970; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.008 сек.