f irststeps.ru
www.ПЕРВЫЕ ШАГИ.ru :: Шаг 17
5-6 минут
Описание
Создает новый объект Database, сохраняет базу данных на диске и возвращает открытый объект Database (только в рабочей области ядра Microsoft Jet).
Set базаДанных = рабочаяОбласть.CreateDatabase (имя, порядок, параметры)
Параметры
базаДанных
Объектная переменная, задающая создаваемый объект Database.
рабочаяОбласть
Объектная переменная, задающая существующий объект Workspace, в котором будет содержаться база данных. Если рабочаяОбласть, не указывается, используется стандартный объект Workspace.
имя
Выражение типа String длиной до 255 символов, определяющее имя файла создаваемой базы данных. Следует указать полный путь и имя файла, например "C:\db1.mdb". Если пользователь не указывает расширение имени, автоматически добавляется расширение .mdb. Если сетевая операционная система это допускает, можно также указать сетевой путь к файлу, например, "\\server1\share1\dir1\db1". Данный метод позволяет создавать только файлы .mdb.
порядок
Строковое выражение, определяющее порядок символов, который будет использоваться в операциях сравнения и сортировки в создаваемой базе данных, как указано ниже в разделе "Значения". Данный аргумент является обязательным, в противном случае возникает ошибка. Допускается также создание пароля для нового объекта Database путем слияния строки пароля (начинающейся с символов ";pwd=") с константой в аргументе порядок, например:
dbLangCyrillic & ";pwd=МойПароль"
Если требуется задать то же значение аргумента порядок, что и в базе данных стараяБД (значение по умолчанию), но указать новый пароль, достаточно ввести строку пароля как значение аргумента порядок:
";pwd=НовыйПароль"
В аргументе порядок используются следующие константы, определяющих значение свойства
CollatingOrder
, т.е. язык, в соответствии с правилами которого определяется порядок символов, используемый при сравнении текстовых строк.
- dbLangGeneral - Английский, немецкий, французский, португальский, итальянский и современный испанский.
- dbLangArabic - Арабский.
- dbLangChineseSimplified - Упрощенный китайский.
- dbLangChineseTraditional - Традиционный китайский.
- dbLangCyrillic - Русский.
- dbLangCzech - Чешский.
- dbLangDutch - Голландский.
- dbLangGreek - Греческий.
- dbLangHebrew - Иврит.
- dbLangHungarian - Венгерский.
- dbLangIcelandic - Исландский.
- dbLangJapanese - Японский.
- dbLangKorean - Корейский.
- dbLangNordic - Скандинавские языки (только для версии ядра Microsoft Jet 1.0).
- dbLangNorwDan - Норвежский и датский.
- dbLangPolish - Польский.
- dbLangSlovenian - Словенский.
- dbLangSpanish - Традиционный испанский.
- dbLangSwedFin - Шведский и финский.
- dbLangThai - Тайский.
- dbLangTurkish - Турецкий.
параметры Необязательный. Константа или комбинация констант, которая определяет один или несколько параметров, как указано ниже в разделе "Значения". Пользователь имеет возможность комбинировать параметры путем суммирования констант:
- dbEncrypt - Создание зашифрованной базы данных.
- dbVersion10 - Создание базы данных, в которой используется формат файла ядра базы данных Microsoft Jet версии 1.0.
- dbVersion11 - Создание базы данных, в которой используется формат файла ядра базы данных Microsoft Jet версии 1.1.
- dbVersion20 - Создание базы данных, в которой используется формат файла ядра базы данных Microsoft Jet версии 2.0.
- dbVersion30 - (По умолчанию). Создание базы данных, в которой используется формат файла ядра базы данных Microsoft Jet версии 3.0 (совместимый с версией 3.5).
Замечания
В методе CreateDatabase создается и открывается новая пустая база данных и возвращается объект Database. Пользователь должен окончательно определить ее структуру и содержимое с помощью дополнительных объектов доступа к данным (DAO). При необходимости создать частичную или полную копию существующей базы данных для ее дальнейшего использования следует применять метод CompactDatabase.
Пример
Следующая программа с помощью метода CreateDatabase создает новый зашифрованный объект Database.
Sub CreateDatabaseX()
Dim wrkDefault As Workspace
Dim dbsNew As DATABASE
Dim prpLoop As Property
' Определяет стандартный объект Workspace.
Set wrkDefault = DBEngine.Workspaces(0)
' Проверяет наличие файла, имеющего имя, которое
' будет присвоено новой базе данных.
If Dir("NewDB.mdb") <> "" Then Kill "NewDB.mdb"
' Создает новую зашифрованную базу данных
' с указанным используемым порядком символов.
Set dbsNew = wrkDefault.CreateDatabase("NewDB.mdb", dbLangGeneral, dbEncrypt)
With dbsNew
Debug.Print "Свойства " & .Name
' Отображает семейство Properties нового
' объекта Database.
For Each prpLoop In .Properties
If prpLoop <> "" Then Debug.Print " " & prpLoop.Name & " = " & prpLoop
Next prpLoop
End With
dbsNew.Close
End Sub