Программное создание Баз Данных И
так, в предыдущей статье было показано,
как создать БД. Но созданный файл – пуст и с ним
ничего нельзя делать пока не будут
созданы таблицы. Создание
Таблиц
Для
создания новой таблицы неоходимо
определить новый объект TableDef (Table Definition
– описание таблицы). Объект TableDef содержит
всю необходимую информацию для
определения таблицы БД. Он описывает в
БД тип информации, хранимой в таблице
и некоторые факультативные свойства
этой таблицы. Объект TableDef содержит
3 коллекции, 5
методов и 10
свойств. Свойства
объекта TableDef устанавливаются при создании
таблицы и их значения различаются для
собственных таблиц Microsoft
Jet
и присоединеных таблиц. Следующие
операторы показывают, как создать
объект TableDef
и определить имя таблицы: 'Объявлеям
необходимые переменные Dim NewDB As Database Dim NewWs As WorkSpace Dim NewTbl As TableDef Dim
strDBPath As String 'Устанавливаем
путь к создаваемой БД с указанием ее
имени (MyDB.mdb) StrDBPath = “C:\ExamplDB\MyDB.mdb” ‘Создаем
рабочее пространство Set NewWs = DBEngine.Workspaces(0) 'Создаем
Базу Данных Set NewDB = NewWs.CreateDatabase (strDBPath, dbLangGeneral) ‘Создаем таблицу Set
NewTbl = NewDB.CreateTableDef (Name) Свойство
таблицы Name является одним из свойств объекта TableDef, и
обычно это свойство единственное,
которое необходимо для создания
таблицы БД Access. При
подключении к БД внешней таблицы
можно использовать некоторые другие
свойства (Attributes,
Connect,
SourceTableName и т.д
– рассматривать мы их не будем). Эти
свойства можно указывать как
последовательные параметры метода CreateTableDef.
Можно также определять и другие
свойства, давая им некоторые значения.
Эти операторы должны следовать за
методом CreateTableDef. После
выполнения вышеприведенного кода вы
создадите таблицу, но это не все ( в
принципе она у вас не создастся),
необходимо описать хотябы одно поле,
для того чтобы действительно таблица
появилась в БД. Как
описывать и создавать поля мы
рассмотрим в другой статье, а сейчас
без объяснений, кратко опишем одно
поле и наконец создадим таблицу. 'Объявляем
переменную для поля Dim Fl As Field 'Создаем
поле с его атрибутами Set Fl = NewTbl.CreateField (“MyField”, dbText, 20) Теперь
нампредстоит финальная часть, т.е.
присоединение созданной таблицы к БД.
Это делается с помощью метода Append
объекта TableDef. Но сначала нам необходимо добавить в
нашу таблицу поле (!), а затем саму
таблицу к БД. 'Добавляем
поле к таблице NewTbl.Fields.Append Fl 'Добавляем
таблицу к БД NewDb.TableDefs.Append
NewTbl Внимание.
При добавлении таблицы к БД, если
создаваемая таблица
уже существует, возникает
перехватываемая ошибка
- 3010 – 'Table ''Имя
введенной таблицы''
alredy
exists'. Так же,
если имя таблицы пусто или содержит
недопустимые символы возникает
перехватываемая ощибка – 3125.
Необходимо включить код для их
перехвата. Удаление
Таблиц Удаление
таблицы из БД осуществляется с
помощью метода Delete
объекта TableDef. NewDb.TableDefs.Delete
“MyTable” Внимание.
Метод Delete
нужно использовать с большой
осторожностью. При удалении таблицы
все индексы и – самое глвное – данные
также удаляются. При
удалении таблицы, если таблица
уже удалена, возникает
перехватываемая ошибка
- 3265, так же,
если имя таблицы пусто или содержит
недопустимые символы возникает
перехватываемая ощибка – 3125.
|