社区
数据库(包含打印,安装,报表)
帖子详情
问题征解?
iipy
2003-03-26 03:05:13
数据库的三层结构开发是什么意思啊,怎样去开发啊
...全文
32
5
打赏
收藏
问题征解?
数据库的三层结构开发是什么意思啊,怎样去开发啊
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
chenyu5188
2003-03-26
打赏
举报
回复
UP
来学习了
yem9
2003-03-26
打赏
举报
回复
强,能解释得这么清楚。。。
学习。。。
lihonggen0
2003-03-26
打赏
举报
回复
http://www.yesky.com/20020413/1606841.shtml
lihonggen0
2003-03-26
打赏
举报
回复
COM+
三层开发
http://www.umlchina.com/jof/jof11/dragf8.htm
lihonggen0
2003-03-26
打赏
举报
回复
用VB和MTS开发多层数据库应用系统
用VB和MTS开发多层数据库应用系统
MTS(Microsoft Transaction Server)是微软为其Windows NT操作系统推出的一个中间件产品,由于它具有强大的分布事务支持、安全管理、资源管理和多线程并发控制等特性,使其成为在Windows平台上开发大型数据库应用系统的首选产品。
由于MTS屏蔽了底层实现的复杂性,极大地简化了这类应用的开发,程序员可以将精力集中在业务逻辑上,因而有效地提高了软件的开发效率。本文将通过实例介绍用VB和MTS开发多层数据库应用系统的方法和步骤。
基于MTS开发多层数据库应用系统的步骤是:第一步,开发MTS组件提供服务,程序员可以用任何一种支持COM的语言编写MTS组件,如VB、VC、Delphi和COBOL等;第二步,分发MTS组件到MTS软件包中,并且把MTS软件包安装到MTS环境之中;第三步,编写客户端程序调用执行在MTS环境之中的MTS组件,以取得服务。详细开发过程如下:
1. 创建MTS组件
本例中我们将编写一个MTS组件,运行于中间层的应用服务器上,由它建立与数据库服务器的连接,完成对某课程的授课教师信息的查询。
启动Visual Basic,新建一ActiveX DLL项目。选择工程选单,在引用窗口中选中Microsoft ActiveX Object Library 和Microsoft Transaction Sever Type Library。按“确定”将这两项加到项目中。
从工程选单中选择工程属性,在通用选项中将项目名称改为MtsDemo。线程模块选择分部线程DLL,将类模块名称改为Course,将下列程序加入类模块的通用声明中:
Option Explicit
Public Function ListCourses( ByVal mcourse as String) As ADODB.Recordset
On Error GoTo ErrorHandle
Dim strSQL As String
Dim objContext As.ObjectContext
Set objContext = GetObjectContext()
' 建立事务性组件
Dim objADOConn As ADODB.Connection
' 利用ADO访问数据库
Dim objRS As ADODB.Recordset
Set objADOConn = New ADODB.Connection
With objADOConn
.connectiontimeout=10
.connectionstring="Provider=SQLOLEDB.1;UserID=sa;Initial Catalog=DBcourse"
' 通过OLEDB建立与数据库的连接
.Open
End with
Set ObjRS = New ADODB.Recordset
StrSQL="SELECT
Teacher.name,Teacher.sex,Techer.age,Teacher.edu_level,Teacher.tiltle"
strSQL=strSQL&&" From Teacher,TeacherCourse,Courses "
strSQL=strSQL&& "Where Teacher.teacher_NO=TeacherCourse.teacher_no
and TeacherCourse.course_no=Courses.course_no
and Courses.course like'" && mCourse && "'"
'“like”关键字可实现模糊查询
ObjRS.Open strSQL, ObjADOConn
' 进行数据库查询
Set ListCourses = ObjRS
ObjContext.SetComplte
' 若事务成功完成,则提交该事务
objADOConn.Close
Set objADOConn = Nothing
Set objRS=Nothing
strSQL = ""
'关闭数据库连接,释放所有对象
Exit Function
ErrorHandle:
ObjContext. SetAbort
Set ListCourses=Nothing
' 若事务失败,则回滚事务
End Function
2. 注册MTS组件
所有运行于服务器端的ActiveX DLL都应在MTS中注册,这是通过Transaction Server Explorer完成的。其过程如下:
(1)创建软件包
软件包是在同一进程中运行的组件集合,不同软件包中的组件以进程隔离的方式运行在隔离的进程中。在创建软件包时,开发者应尽量把共享资源的组件分配在同一软件包内;考虑到软件包中各个组件所共享的资源类型,可以把那些共享“昂贵”资源(如对某个特定数据库的连接)的组件编为一组。
(2)向软件包添加组件
在想安装组件的包中选择Component文件夹,单击Install New Component(s) 按钮,当提示添加文件时找到新生成的MtsDemo.dll文件将其加入。
3. 编写客户端程序
创建一个标准EXE项目。选择工程选单,接着选择引用,在引用窗口中选中刚才创建的MtsDemo,加入到项目中。
向窗体中添加如下内容:
名称 标题
标签 label1 请输入课程名:
文本框 txtcourse
命令按扭 cmdok 查询
数据网格 dgresult
再将下列程序加入通用声明中:
Private Sub cmdOK_Click()
Dim rsResult As ADODB.Recordset
Dim objMts As Object
Dim mCourse As String
mCourse = Trim(txtCourse.Text)
Set objMts = CreateObject(mtsDemo.Course)
Set rsResult = objCourse.ListCourses(mCourse)
If rsResult.EOF Then
MsgBox ("无满足条件的记录!")
Exit Sub
End If
Set dgResult.DataSource = rsResult
Dgresult.Columns(0).Caption = "姓名"
Dgresult.Columns(1).Caption = "性别"
DgResult.Columns(2).Caption = "年龄"
Dgresult.Columns(3).Caption = "学历"
DgResult.Columns(4).Caption = "职称"
DgResult.Refresh
Set objMts = Nothing
End Sub
4. 运行客户端
首先将编写好的客户端程序进行编译发布,然后在Microsoft Management Console中找到新的软件包,击右键选择导出,将它导出到c:\Program File\Packages中,在该文件夹的Client下自动生成了MtsDemo的客户端安装程序。在客户机上运行Client文件夹下的Setup.exe文件,再安装客户端程序即可运行。
国际数学
问题
征解
.pdf
国际数学
问题
征解
.pdf
500个世界著名数学
征解
问题
-冯贝叶
500个世界著名数学
征解
问题
-冯贝叶。。。。。。。。。。。。。
粘弹性厚壁筒
问题
的辛本
征解
方法 (2007年)
将哈密顿体系引进到粘弹性力学厚壁筒
问题
中,在辛体系下...将原
问题
归结为辛几何空间中的零本征值本
征解
和非零本征值本
征解
问题
,从而建立了一种有效的分析
问题
方法和数值方法。为解决同类
问题
提供了一条可行的路径。
会计制度——农业税收
征解
会计制度.doc
会计制度——农业税收
征解
会计制度.doc
会计制度农业税收
征解
会计制度(制度范本、DOC格式).doc
会计制度农业税收
征解
会计制度(制度范本、DOC格式).doc
数据库(包含打印,安装,报表)
1,216
社区成员
55,954
社区内容
发帖
与我相关
我的任务
数据库(包含打印,安装,报表)
VB 数据库(包含打印,安装,报表)
复制链接
扫一扫
分享
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章