打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
在VB程序中实现新建一个新的access数据库
Option   Explicit
'===================================================================================
'引用:Microsoft   DAO   3.51   Object   Library
'===================================================================================
Private   dbDataBase   As   DAO.Database   '本模块内的数据库对象
Private   tdTable   As   DAO.TableDef   '本模块内的表对象
Private   fldField   As   DAO.Field   '本模块内的字段对象
'新建一个数据库,cDataBase(数据库的路径,数据库的密码(可选,默认空))
Public   Function   cDataBase(ByVal   PathFile   As   String,   Optional   ByVal   Password   As   String   =   " ")   As   Boolean
        On   Error   Resume   Next
        Set   dbDataBase   =   CreateDatabase(PathFile,   dbLangGeneral,   dbEncrypt)
        dbDataBase.NewPassword   " ",   Password
        Set   dbDataBase   =   Nothing
        cDataBase   =   (Err.Number   =   0)
End   Function
'新建一个表,必须有一个字段,cTable(数据库的路径,新建的表名,第一个字段名,字段的类型,字段的大小,这个数据库的密码(可选,默认空))
Public   Function   cTable(ByVal   MdbFile   As   String,   ByVal   TableName   As   String,   ByVal   DefaultFieldName   As   String,   ByVal   FieldType   As   DAO.DataTypeEnum,   ByVal   FieldSize   As   Long,   Optional   ByVal   Password   As   String   =   " ")   As   Boolean
        On   Error   Resume   Next
        Set   dbDataBase   =   DAO.OpenDatabase(MdbFile,   True,   False,   ";pwd= "   &   Password   &   "; ")
        Set   tdTable   =   dbDataBase.CreateTableDef(TableName)
        Set   fldField   =   tdTable.CreateField(DefaultFieldName,   FieldType,   FieldSize)
        tdTable.Fields.Append   fldField
        dbDataBase.TableDefs.Append   tdTable
        Set   fldField   =   Nothing
        Set   tdTable   =   Nothing
        Set   dbDataBase   =   Nothing
        cTable   =   (Err.Number   =   0)
End   Function
'重命名一个表,ReNameTable(数据库的路径,旧的表名,新的表名,这个数据库的密码(可选,默认空))
Public   Function   ReNameTable(ByVal   MdbFile   As   String,   ByVal   OldTable   As   String,   ByVal   NewTable   As   String,   Optional   ByVal   Password   As   String   =   " ")   As   Boolean
        On   Error   Resume   Next
        Set   dbDataBase   =   DAO.OpenDatabase(MdbFile,   True,   False,   ";pwd= "   &   Password   &   "; ")
        Dim   i   As   Long
        For   i   =   0   To   dbDataBase.TableDefs.Count   -   1
                Set   tdTable   =   dbDataBase(i)
                If   tdTable.Name   =   OldTable   Then   Exit   For
                Set   tdTable   =   Nothing
        Next
        tdTable.Name   =   NewTable
        ReNameTable   =   (Err.Number   =   0)
End   Function
'新建一个字段,cField(数据库的路径,表名,字段名,字段的类型,字段的大小,这个数据库的密码(可选,默认空))
Public   Function   cField(ByVal   MdbFile   As   String,   ByVal   TableName   As   String,   ByVal   FieldName   As   String,   ByVal   FieldType   As   DAO.DataTypeEnum,   ByVal   FieldSize   As   Long,   Optional   ByVal   Password   As   String   =   " ")   As   Boolean
        On   Error   Resume   Next
        Set   dbDataBase   =   DAO.OpenDatabase(MdbFile,   True,   False,   ";pwd= "   &   Password   &   "; ")
        Dim   i   As   Long
        For   i   =   0   To   dbDataBase.TableDefs.Count   -   1
                Set   tdTable   =   dbDataBase(i)
                If   tdTable.Name   =   TableName   Then   Exit   For
                Set   tdTable   =   Nothing
        Next
        Set   fldField   =   tdTable.CreateField(FieldName,   FieldType,   FieldSize)
        tdTable.Fields.Append   fldField
        Set   fldField   =   Nothing
        Set   tdTable   =   Nothing
        Set   dbDataBase   =   Nothing
        cField   =   (Err.Number   =   0)
End   Function

'删除一个表,dTable(数据库的路径,删除的表名,这个数据库的密码(可选,默认空))
Public   Function   dTable(ByVal   MdbFile   As   String,   ByVal   TableName   As   String,   Optional   ByVal   Password   As   String   =   " ")   As   Boolean
        On   Error   Resume   Next
        Set   dbDataBase   =   DAO.OpenDatabase(MdbFile,   True,   False,   ";pwd= "   &   Password   &   "; ")
        dbDataBase.TableDefs.Delete   (TableName)
        Set   dbDataBase   =   Nothing
        dTable   =   (Err.Number   =   0)
End   Function
'删除一个字段,dField(数据库的路径,表名,字段名,这个数据库的密码(可选,默认空))
Public   Function   dField(ByVal   MdbFile   As   String,   ByVal   TableName   As   String,   ByVal   FieldName   As   String,   Optional   ByVal   Password   As   String   =   " ")   As   Boolean
        On   Error   Resume   Next
        Set   dbDataBase   =   DAO.OpenDatabase(MdbFile,   True,   False,   ";pwd= "   &   Password   &   "; ")
        Dim   i   As   Long
        For   i   =   0   To   dbDataBase.TableDefs.Count   -   1
                Set   tdTable   =   dbDataBase(i)
                If   tdTable.Name   =   TableName   Then   Exit   For
                Set   tdTable   =   Nothing
        Next
        tdTable.Fields.Delete   (FieldName)
        Set   tdTable   =   Nothing
        Set   dbDataBase   =   Nothing
        dField   =   (Err.Number   =   0)
End   Function
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
技术图文:如何利用 C# 向 Access 数据库插入大量数据?
java 操作数据库备份
VB和VB.NET中的XML操作
YII框架分析笔记4:ar模型和db
用VBA实现excel与access数据库交互
C#.NET操作数据库通用类(MS SQL Server篇)
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服