数据库的建立过程,这个方法小白也适合
大家好,今天继续讲解VBA解决方案第11讲的内容,如何动态建立数据库。 VBA代码数据库解决方案一写到这里,就已经讲了很多了。相信大家应该对数据库的概念有一个清晰的认识。我们也开始一步步讲解数据库的实际操作。有朋友说你这个例子的通用数据库是提前建立的。是否可以用VBA代码动态建立数据库?今天的演讲我们将解决这个问题。在程序中动态建立数据库是完全可以实现的。今天的内容需要用到的知识点是ADOX。我们必须先解释一下这个知识点。
1 什么是ADOX:ADOX 是Data for Data 的缩写,是ADO 对象和编程模型的扩展。可用于创建、修改和删除架构对象,如表的创建、安全对象的实现,可用于维护用户和组,以及授予和撤销对象的权限。
要将 ADOX 与开发工具一起使用,您首先需要创建对 ADOX 的引用。参考对象是:“ADO Ext. for DDL and .”当然,也可以在过程中创建。估计这个时候再讲一下参考和流程创建,小伙伴们应该不会陌生吧。这与ADO的应用和创建是一样的。
ADOX的对象有哪些,ADOX的对象主要使用以下内容
1 包含描述数据源架构的目录集合。
2 表示表、索引或键的列。
3 Group 表示在安全数据库中具有访问权限的组帐户。
4 Index表示数据库表中的索引。
5 Key代表数据库表中的主键、外键或唯一键。
6 代表一个存储过程。
7 Table 表示一个数据库表,包括列、索引和关键字。
三种ADOX方法是什么
1() 向集合中添加一个新对象。
2() 向集合中添加一个新的 Group 对象。
3() 向集合中添加一个新的 Index 对象。
4 (Keys) 将新的 Key 对象添加到 Keys 集合中。
5() 向集合中添加一个新对象。
6() 向集合中添加一个新的 Table 对象。
7 更改用户帐户的密码。
8 创建一个新目录。
9 从集合中删除一个对象。
10 更新集合中的对象以反映提供者可用和指定的对象。
四个 ADOX 属性
1 Count 表示集合中的对象个数。
2 表示指定的最大列大小。
3 表示删除主键时要做什么。
4 指示索引字段中值为 Null 的记录是否有索引条目。
5 Name 表示对象的名称。
6 表示列中值的范围。
7表示该列数据值的最高精度。
8 表示索引是否代表表的主键。
9 表示相关表中相关列的名称(仅限关键字列)。
10 表示列的排序顺序(仅索引列)。
11 Type() 表示关键字的数据类型。
五我们来看一个例子如何使用ADOX创建数据库
我们看下面的代码:
Sub() '创建数据库和表
变暗
暗淡, , As
设置 = ("ADOX.")
= .Path & ".accdb" '这里是完整路径
= "员工记录" '表名
If Dir() "" Then Kill '如果有同名表,则删除
.“=.ACE.OLEDB.12.0;Data=” & ‘打开数据库连接
'以下代码将创建一个名为“员工记录”的表,其中包含员工编号、姓名、性别、部门、职务、备注等字段
="表" & _
&“(员工号长非空键,”_
&“名称文本(20) 不为空,”_
&“性别文本(1)不为空,”_
&“部门文本(20)不为空,”_
&“标题文本(20),”_
&“备注文字(20))”
..
"数据库创建成功!" &_
& "数据库文件名为:" && _
& "数据表名是:" && _
& "保存在:" & .Path, _
+ , "创建数据库"
设置 =
结束子
代码截图:
代码解释:由于大部分代码都有注释,所以只需要多解释两条语句:
1 = “表格”&
SQL 中的 TABLE 语句用于在数据库中创建表。
SQL 表语法:
TABLE表名(列名1数据类型、列名2数据类型、列名3数据类型……)
2 ..
这句话的解释在上一讲已经详细解释过了,没有记录集返回
运行结果:
打开数据库和表: