15 мая 2023 года "Исходники.РУ" отмечают своё 23-летие!
Поздравляем всех причастных и неравнодушных с этим событием!
И огромное спасибо всем, кто был и остаётся с нами все эти годы!

Главная Форум Журнал Wiki DRKB Discuz!ML Помощь проекту




Как создать базу данных MsAccess

Для этого добавьте ссылку в библиотеку Microsoft DAO _._ Object Library (я использую версию 3.6 для нижеприведённого кода), и добавьте следующий код.

Public Sub CreateDB(ByVal pDatabaseUNC As String)
    Dim ws As Workspace
    Dim db As Database

    On Error GoTo Routine_Error

    ' Создать базу данных с указанным именем
    Set ws = DBEngine.Workspaces(0)     'Default Workspace
    Set db = ws.CreateDatabase(pDatabaseUNC, dbLangGeneral)

    ' Добавить новую таблицу во вновь созданную базу
    CreateTable db, “Some Table”

Routine_Error:
    Set db = Nothing
    Set ws = Nothing
    If Err.Number <> 0 Then Err.Raise Err.Number, Err.Source, Err.Description
End Sub

Public Sub CreateTable(ByRef pDB As Database, ByVal pTableName As String)
    Dim tbl As TableDef
    Dim fld As Field

    On Error GoTo Routine_Error

    ' Создаём таблицу с указанным именем в базе
    Set tbl = pDB.CreateTableDef(pTableName)

    With tbl
        ' Добавляем поля
        Set fld = .CreateField(“Some Field”, dbText, 10)
        .Fields.Append fld
        Set fld = .CreateField(“Some Other Field”, dbText, 20)
        .Fields.Append fld
    End With

    ' Добавляем таблицу к базе данных
    pDB.TableDefs.Append tbl

Routine_Error:
    Set fld = Nothing
    Set tbl = Nothing
    If Err.Number <> 0 Then Err.Raise Err.Number, Err.Source, Err.Description
End Sub