没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
笔记制作:加肥猫 Email:jungj@163.com QQ:403479502 20:00—21:00 在线
1-1 利用 DAO 创建数据库和数据表
1. 首先建立对 DAO 对象库 Microsoft DAO3.6 Object Library 的引用.在 VBA 界面下:
工具-引用,选中‖Microsoft DAO3.6 Object Library‖
2. 代码:
Public Sub1_1()
Dim myDb As DAO.Database ‗定义 DAO 的 Database(数据库)对象变量
Dim myTbl As DAO.TableDef ‗定义 DAO 的 TableDef(数据表)对象变量
Dim myData As String ‗定义数据库名称变量
Dim myTable As String ‗定义数据表名称变量
‗设置要创建的数据库名称(包括完整路径)
myData=ThisWorkbook.Path & ―\学生成绩管理.mdb‖
‗设置要创建的数据表名称
myTable=‖期末成绩‖
‗删除已经存在的数据库文件
on error resume next
kill myData
on error goto 0
‗创建数据库
Set myDb=CreateDatabase(myData,dbLangChineseSimplified)
‗创建数据表
Set myTbl=myDb.CreateTableDef(myTable)
‗为创建的数据表添加各个字段
With myTbl
.Fields.Append .CreateField(―学号‖,dbText,10)
.Fields.Append .CreateField(―姓名‖,dbText,6)
.Fields.Append .CreateField(―性别‖,dbText,1)
.Fields.Append .CreateField(―班级‖,dbText,10)
.Fields.Append .CreateField(―数学‖,dbSingle)
.Fields.Append .CreateField(―语文‖,dbSingle)
.Fields.Append .CreateField(―物理‖,dbSingle)
.Fields.Append .CreateField(―化学‖,dbSingle)
.Fields.Append .CreateField(―英语‖,dbSingle)
.Fields.Append .CreateField(―总分‖,dbSingle)
End With
‗将创建的数据表添加到数据库的 TableDefs 集合中
myDb.TableDefs.Append myTbl
‗关闭数据库,并释放变量
myDb.Close
Set myDb=Nothing
Set myTbl=Nothing
笔记制作:加肥猫 Email:jungj@163.com QQ:403479502 20:00—21:00 在线
‗弹出信息
MsgBox‖创建数据库成功!‖ & vbCrLf & ―数据库文件名为:‖ & myData & vbCrLf &
―数据表名称为:‖ & myTable & vbCrLf & ―保存位置:‖ & ThisWorkbook.Path,vbInformation,‖
创建数据库‖
End sub
注:
·CreateDatabase 方法创建数据库
set mydb=createdatabase(mydata,dblangchinesesimplified)
mydb:数据库类型变量
dblangchinesesimplified:表达字符串比较规则,这里为简体中文
·CreateTableDef 方法创建数据表
Set myTbl=mydb.Createtabledef(mytable)
mytbl:表类型变量
mydb:数据库名
mytable:表名
补充:创建带密码的 Access 数据库
Set mydb=createdatabase(mydata, dblangchinesesimplified & ―;pwd=12345‖)
1-2 利用 ADOX 创建数据库和数据表:
引用:microsoft ADO Ext.2.X for DDL and Security
代码:
public sub1_2()
dim mycat as new adox.catalog ‗定义 ADOX 的 Catalog 对象变量
dim mytbl as new table ‗定义 table 对象变量
dim mydata as string ‗定义数据库名称变量
dim mytable as string ‗定义数据表名称变量
‗设置要创建的数据库名称(包括完整路径)
mydata=thisworkbook.path & ―\学生成绩管理.mdb‖
‗设置要创建的数据表名称
mytable=‖期末成绩‖
‗删除已经存在的数据库文件
on error resume next
笔记制作:加肥猫 Email:jungj@163.com QQ:403479502 20:00—21:00 在线
kill mydata
on error goto 0
‗创建新的数据库
mycat.create‖provider=microsoft.jet.oledb.4.0;data source=‖ & mydata
‗创建数据表,并添加字段
with mytbl
.name=mytable
.columns.append ―学号‖,advarwchar,10
.columns.append ―姓名‖,advarwchar,6
.columns.append ―性别‖,advarwchar,1
.columns.append ―班级‖,advarwchar,10
.columns.append ―数学‖,adSingle
.columns.append ―语文‖,adSingle
.columns.append ―物理‖,adSingle
.columns.append ―化学‖,adSingle
.columns.append ―英语‖,adSingle
.columns.append ―总分‖,adSingle
End with
‗将创建的数据表添加到 ADOX 的 Tables 集合中
mycat.tables.append mytbl
‗释放变量
set mycat=nothing
set mytbl=nothing
‗弹出信息
msgbox ―创建数据库成功!‖ & vbcrlf & ―数据库文件名为:‖ & mydata & vbcrlf & ―数据表
名称为:‖ & mytable & vbcrlf & ―保存位置:‖ & thisworkbook.path,vbinformation,‖创建数据库‖
end sub
注:在 VB 中,常用的数据访问接口有下列三种:数据库访问对象(DAO,DataAccess object)、
远程数据库对象(RDO,Remote Data Object)和 ActiveX 数据对象(ADO,ActiveX Data Object)
·ADOX 的常用方法:
·Append 方法:可以创建 columns,groups,indexes,keys,procedures,tables,users,views 等
为数据表添加字段:
mytbl.columns.append 字段名,数据类型,字段长度
将创建的数据表添加到 ADOX 的 Tables 集合中的语句是:
Mycat.tables.append mytbl
·Create 方法:创建一个新的数据库的语句:
Mycat.create ―provider=Microsoft.jet.oledb.4.0;data source=‖ & mydata
·Delete 方法:删除数据表:
Mycat.tables.delete 数据表名
笔记制作:加肥猫 Email:jungj@163.com QQ:403479502 20:00—21:00 在线
·Refresh 方法:用于更新集合中的对象
1-3 利用 SQL 语句创建数据库和数据表
首先引用:microsoft activeX data objects 2.X library 和 microsoft ado ext.2.x for ddl and
security‖
代码:
public sub1_3()
dim mycat as new adox.catalog ‗定义 ADOX 的 Catalog 对象变量
Dim mycmd as new adodb.command ‗定义 Command 对象变量
dim mydata as string ‗定义数据库名称变量
dim mytable as string ‗定义数据表名称变量
dim SQL as string
‗设置要创建的数据库名称(包括完整路径)
mydata=thisworkbook.path & ―\学生成绩管理.mdb‖
‗设置要创建的数据表名称
mytable=‖期末成绩‖
‗删除已经存在的数据库文件
on error resume next
kill mydata
on error goto 0
‗创建数据库文件
mycat.create ―provider=microsoft.jet.oledb.4.0;Data source=‖ & mydata
‗设置数据库连接
set mycmd.activeconnection=mycat.activeconnection
‗设置创建数据表的 SQL 语句
SQL = "CREATE TABLE " & myTable _
& "(学号 text(10),姓名 text(6),性别 text(1),班级 text(10)," _
& "数学 Single,语文 Single,物理 Single,化学 Single," _
& "英语 Single,总分 Single)"
‗利用 execute 方法创建数据表
with mycmd
.commandtext=sql
.execute, , adcmdtext
end with
笔记制作:加肥猫 Email:jungj@163.com QQ:403479502 20:00—21:00 在线
‗释放变量
set mycat=nothing
set mycmd=nothing
‗弹出信息
msgbox ―创建数据库成功!‖ & vbcrlf & ―数据库文件名为:‖ & mydata & vbcrlf & ―数据
表名称为:‖ & mytable & vbcrlf & ―保存位置:‖ & thisworkbook.path,vbinformation,‖创建数
据库‖
end sub
注:有两种方法来创建数据表:
·利用 ADODB.Command 对象的 commandtext 属性和 execute 方法:
dim mycmd as new adodb.command
set mycmd.activeconnection=mycat.activeconnection
with mycmd
.commandtext=SQL
.execute, , adcmdtext
end with
·利用 ADODB.Connection 对象的 execute 方法来生成几个记录集
Dim cnn as new adodb.connection
dim rs as new adodb.recordset
set cnn=mycat.activeconnection
set rs=cnn.execute(sql)
1-4 在已有的数据库中创建数据表(DAO)
引用 DAO 对象库:microsoft DAO 3.6 object library
代码:
public sub1_4()
dim mydb as dao.database ‗ 定义 DAO 的 database(数据库)对象变量
dim mydata as string ‗定义数据库名称变量
dim mytable as string ‗定义数据表名称变量
‗设置数据库名称(包括完整路径)
mydata=thisworkbook.path & ―\学生成绩管理.mdb‖
‗设置要创建的数据表名称
mytable=‖期末成绩‖
‗打开数据库
set mydb=opendatabase(mydata)
剩余241页未读,继续阅读
资源评论
vberto
- 粉丝: 0
- 资源: 6
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功