Visual Basic Tips


Jetデータベース(DAO)テーブルの作成と削除


Jetデータベースの中にテーブルを作成します。

※このサンプルを動かすにはVisual Basic Tipsの
 Jetデータデース(DAO)データベースの作成と削除
 を行ってデータベースを作成してください。

Private Sub Form_Load()
  
Call CreateTable(App.Path & "\work.mdb")
End Sub


Sub CreateTable(strDbPath As String)
  
Dim i As Integer
  
Dim intRet As Integer
  
Dim db As Database
  
Dim ws As Workspace
  
Dim tdf As TableDef
  
Dim fld(1 To 3) As Field

  
On Error GoTo ErrHandler

  
'ワークスペースの設定とデータベースのオープン
  
Set ws = DBEngine.Workspaces(0)
  
Set db = ws.OpenDatabase(strDbPath)

  
'テーブルの作成
  
Set tdf = db.CreateTableDef("新規テーブル")
  
'フィールドの定義
  
Set fld(1) = tdf.CreateField("FieldText", dbText)
  
Set fld(2) = tdf.CreateField("FieldInteger", dbInteger)
  
Set fld(3) = tdf.CreateField("FieldLong", dbLong)
  
'空き文字列の入力許可
  fld(1).AllowZeroLength =
True

  
'定義したフィールドをテーブルに追加
  
For i = 1 To 3
    tdf.Fields.Append fld(i)
  
Next
  
'テーブルの追加
  db.TableDefs.Append tdf
  
'データベースのクローズ
  db.Close
  ws.Close

  
Exit Sub
ErrHandler:
  
If Err = 3010 Then 'テーブルが既に存在
    
'テーブルを削除します
    db.TableDefs.Delete "新規テーブル"
    
Resume
  
End If
  intRet = MsgBox("<" & Err & ">" & Error(Err), vbOKOnly, "CreateTable")
End Sub


DownLoad vbtips013.lzh 5KB (VB6.0)