VB.NET創建Access數據庫文件


#Region "自動創建"
    ''' <summary>
    ''' 創建數據庫
    ''' </summary>
    ''' <param name="filepath">數據庫文件創建后保存的位置</param>
    ''' <returns>false:創建失敗;true:創建成功或已存在</returns>
    ''' <remarks></remarks>
    Private Function CreateAccess(ByVal filepath As String) As Boolean
        Dim bolReturn As Boolean = False
        Dim clg As ADOX.Catalog = New ADOX.Catalog()
        If (File.Exists(filepath) = False) Then
            Try
                clg.Create("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & filepath & ";Jet OLEDB:Engine Type=5")
                bolReturn = True
            Catch ex As Exception
                MessageBox.Show("創建數據庫文件失敗", "提示")
            End Try
        Else
            bolReturn = True
        End If
        Return bolReturn
    End Function
    ''' <summary>
    ''' 創建數據表
    ''' </summary>
    ''' <param name="filepath">數據庫文件的位置</param>
    ''' <param name="tablename">數據庫表的名字</param>
    ''' <param name="colums">ADOX.Column對象數組</param>
    ''' <remarks></remarks>
    Public Function CreateAccessTable(ByVal filepath As String, ByVal tablename As String, ByVal ParamArray colums() As ADOX.Column) As Boolean
        Dim clg As ADOX.Catalog = New ADOX.Catalog()
        Dim bolReturn As Boolean = False
        Try
            If (CreateAccess(filepath) = True) Then
                '連接已創建好的數據庫文件
                Dim Cn As ADODB.Connection = New ADODB.Connection()
                Cn.Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & filepath & ";")
                clg.ActiveConnection = Cn
                '新建數據庫表
                Dim Table As ADOX.Table = New ADOX.Table()
                Table.Name = tablename
                '加入字段名到數據庫表中
                For Each Column In colums
                    Table.Columns.Append(Column)
                Next
                '加入數據庫表到數據庫文件中
                clg.Tables.Append(Table)
                Cn.Close()
                bolReturn = True
            End If
        Catch ex As Exception
            MessageBox.Show("創建失敗" & ex.ToString(), "數據庫創建")
        End Try
        Return bolReturn
    End Function
#End Region

  '自動創建數據庫文件
    Private Sub btnCreat_Click(sender As Object, e As EventArgs) Handles btnCreat.Click
        Dim ac As Access = New Access()
        Dim FilePath As String = "C:\Users\dwa1124\Desktop\我的數據庫文件.mdb"
        Dim TableName As String = "我的表名"
        Dim Column1 As ADOX.Column = New ADOX.Column()
        Dim Column2 As ADOX.Column = New ADOX.Column()
        Dim Column3 As ADOX.Column = New ADOX.Column()
        '
        Column1.Name = "名字"
        Column1.Type = DataTypeEnum.adVarWChar
        Column1.DefinedSize = 255
        '
        Column2.Name = "性別"
        Column2.Type = DataTypeEnum.adVarWChar
        Column2.DefinedSize = 255
        '
        Column3.Name = "年齡"
        Column3.Type = DataTypeEnum.adInteger
        Column3.DefinedSize = 9
        '調用數據庫創建函數
        If ac.CreateAccessTable(FilePath, TableName, Column1, Column2, Column3) Then
            MessageBox.Show("創建成功", "提示")
        End If
    End Sub


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM