• 回答数

    6

  • 浏览数

    127

孫冭冭1229
首页 > 学术期刊 > 毕业论文vb程序

6个回答 默认排序
  • 默认排序
  • 按时间排序

请叫我大海哥

已采纳

在VB6.0数据库程序开发中使用ADO 和SQL摘要:本文用实例说明了通过ADO处理数据库表中数据的实现方法,并介绍了利用SQL语句实现对数据作数学统计的方法.关键词:ADOSQL数据库1.引言在VB的应用程序开发中,访问数据库的方法可归纳为两种。一种是通过DAO 或ADO的数据源对表中的数据进行直接操作,另一种是通过标准的SQL语句结合Connection 对象对数据库中的数据进行操作,对表中的数据进行检索和统计。DAO是Visual Basic 5.0使用的数据访问技术,它在用于访问MDB文件格式的数据库时有较高的效率,但访问如Oracle或 SQL Server这样的非MDB文件格式的数据库时,因它基于Access/Jet数据库引擎,访问速度会大大降低。所以Visual Basic 6.0推出了ADO 技术。ADO中文含意是ActiveX数据对象(ActiveX Data Object),它是一种面向对象的接口。ADO访问数据库是通过访问OLEDB使用程序和OLEDB供给程序来进行的,它在封装OLE DB的程序中使用了大量的COM接口,是一种高层的访问技术。它在继承OLE DB的同时,大大简化了OLE DB的操作。此外,ADO技术可以以ActiveX控件的形式出现,被广泛应用于Microsoft ActiveX页、Visual C++ 和Visual Basic的编程。SQL是管理关系数据库系统的标准语言。每一种关系数据库如Access、 SQL Server、 Oracle 等都有它自己特有的SQL语言,但它们都支持像select、insert、update、delete、create、drop等标准语句来完成几乎所有的对数据库的操作.本文就ADO 和SQL的用法做一些探讨。2.开发原型我们为计算机产品经销商开发一个进销存的程序。用MS Access 数据库,创建的数据库名叫 ware.mdb. 在这个数据库中,建立表1,表2,表3,表4。表1 商品明细表: wareDetail商品编号 商品名称 单价 厂商 库存wareID(ch10) wareName(ch30) wPrice(Money) manifest(ch40) numInLib(int)表2 流水账 wAccount商品编号 进货数 出货数 日期wareID(ch10) wQuantity(int) wSold(int) wDate(date)表3库存表 wLib总库存数 总库存金额TotalNum(int) TotalMoney(Money)表4临时表wInOut进货数 出货数Quantity, Sold3.ADO的使用方法.ADO2.0存在于Visual Basic 6.0的两个独立的库中 第一个称为 ADODB,在References对话框中的名字是Microsoft ActiveX Data Objects 2.0 Library在这个库中包含了所有的ADO对象。对于那些并不需要太多加强的ADO资源工程,应该使用ADOR库。在References对话框中这个库称为Microsoft ActiveX Data Objects Recordset 2.1 Library 这个库只包含对Recordsets 的支持。Visual BASIC 6.0通过ADO控件和 Recordset对象两种方法来使用ADO.下面介绍一下Recordset 对象的使用方法.在visual basic 中加入如下代码:dim myConnectstr as strngdim myRecordset as New ADODB.recordsetmyConnectstr="PROVIDER=Microsoft.Jet.OLEDB.4.0;DataSource=" & App.Path & "\ware.mdb;Persist Security Info=False"myRecordset.CoursorLocation=AduseClientmyRecordset.Open “select * from wDetail ”,myConnectstr,adOpenKeyset,adLockPessimistic这样就可以对商品明细表追加纪录:myRecordset.AddNewmyRecordset.Fields("wareID") = "000001"myRecordset.Fields("wareName") = "Switch 3500"myRecordset.Fields("wPrice") = 4350myRecordset.Fields("wManufect") = "Cisco"myRecordset.Update获取表中的纪录数:recordcnt=myRecordset.Recordcount移动纪录指针myRecordset.MoveFirst ‘移动到表的第一条纪录myRecordset.MoveLast ‘移动到表的最后一条纪录myRecordset.MovePrevious ‘移动到表的上一条纪录myRecordset.MoveNext ‘移动到表的下一条纪录删除当前纪录myRecordset.Delete最后关闭纪录集,释放纪录集变量myRecordset.CloseSet myRecordset=Nothing4.SQL的使用上面所用的方法,只适合于对单个表的简单操作。如果是对表的数据作复杂查询,或数据统计,用上述方法就非常不方便。一般情况下我们用SQL 语言结合Connection 对象实现SQL 语句中最常用的是Select语句。该语句用来从数据库表中检索数据或者完成其他一些功能。为了使用这条语句你必须知道你要检索的字段名称,或者直接用星号来检索所有字段。下面是Select语句的基本语法:SELECT[ALL | DISTINCT] [TOP xx[PERCENT]] select_listFROM table_name[WHERE {search_criteria|join_criteria}[{AND|OR search_criteria}]][GROUP BY [ALL]aggregate_free_expression[,aggregate_free_expression….]][HAVING search_conditions][ORDER BY{field_list}[ASC|DESC]]其中:ALL 定义每一行都将返回,包括重复纪录。DISTINCT定义只返回不重复的纪录。TOP定义你需要的得到的返回纪录的前几条。在数字xx后用PERCENT来说明只返回前面百分之几条纪录。select_list列出要检索的表的列名。table_name列出要检索的表名search_criteria列出要检索的表的列名join_criteria列出一个表中用来和另一个表的某个列连接的列名aggregate_free_expression 是一个不包含聚集的表达式。Field_list列出了数据排序的顺序ASC定义按照升序排序DESC定义按照降序排序。下面我们来举例说明。你希望检索商品名细表中的信息可使用如下语句:SELECT * FROM waredetial关键字ORDER BY要求列名以确定按哪一列排序。这里我们选定按wareID排序,如果你希望按列wareID的字母顺序排列可采用下面的代码:SELECT wareID FROM wareDetial ORDER BY wareID默认是按升序排列如果想按降序排列可用如下代码:SELECT wareID FROM wareDetial ORDER BY wareID DESC如果你想选择多列,使用下面的语句SELECT wareID,wareName FROM wareDetial ORDER BY wareID用WHERE 关键字来限制选择范围。如果你想选择wareDetial中wareName 列值为“cisco6000”的行。你可用下面的代码实现:SELECT * FROM wareDetial WHERE wareName=”cisco6000” ORDER BY wareID除了SELECT 语句,标准SQL语句还有INSERT UPDATE DELETE等,在此不再作具体介绍.实际的应用经常要对表中的某列或多列数据进行数学运算,这就需要如COUNT(),SUM(),AVG(),MAX(),MIN() 等数学函数。下面对这些函数的用法作具体说明。先建立一个与数据库的连接dim myConnectstr as strngdim myCnt as New ADODB.connectionmyConnectstr="PROVIDER=Microsoft.Jet.OLEDB.4.0;DataSource=" & App.Path & "\ware.mdb;Persist Security Info=False"myCnt.Open myConnectstr若要产生某种商品的总进货数以及总出货数可用以下代码:exeStr =”insert into wInOut select sum(wQuantity) as Quantity, sum(wSold) as Sold from wAccount where wareID= ‘000001’”若要产生库存的总数以及总库存金额可用以下代码:exeStr = "insert into wLib select sum(numInlib) as totalNum,sum(numInLib*wPrice) as totalMoney from wDetail "运行上述代码:myCnt.Execute exeStr关闭连接myCnt.Close在应用程序的开发中,基于数据库的不同,只在连接的数据源部分作相应的修改,其它的部分无需改动。5.结束语本文所列举的仅仅是ADO和SQL的用法的一小部分,实际的应用中对ADO的操作有时用ADO控件结合DATAGRID控件等显示数据也很方便。参考文献:[1]Visual Basic 6 揭秘 Rob Thayer 著 电子工业出版社[2]Visual Basic 6.0 程序设计 蒋斌 电子工业出版社[3]Microsoft SQL Server 7.0 使用详解 Rob Kraft 机械工业出版社[4]Visual BASIC 5.0中文版程序设计教程魏源源等电子工业出版社

195 评论

tiankongch

【摘要】 旅行社管理系统是基于建立完善的旅行管理控制模型的基础上,建立的具有很大灵活性的旅行社管理软件,为旅行社的经营管理提供了及其方便的作用。旅行社管理控制模型是建立在实际旅行社营运方面的构思,并且适当简化的基础上。其中考虑了各个模块可以完成的具体功能,真实的体现了旅行社管理的过程,并对游客的信息查询进行了分析,有助于旅行社的实际管理过程。对该系统需要的功能进行了比较完善的实现,可以由人工输入一定的参量,并且对数据库进行直接的数据交流,能够很好的实现旅行社管理控制的各个方面功能。该旅行社管理系统系统的开发是在visual basic6.0软件的编程环境下实现,数据库系统使用了国际通用SQL—server2000软件实现。论文概貌 :引言部分介绍了本系统的课题来源以及对数据库开发工具的选择;第一章旅行社管理系统概述;第二章介绍了数据库的发展,数据库体系结构,并系统介绍了SQL语言,为设计和理解应用程序做了铺垫;第三章系统介绍了Visual Basic6.0及其部分控件,SQL语言在Visual Basic6.0中的应用,以及SQL—server2000等;第四章是本文的主体,按照软件工程的要求,从需求分析开始,经过概要设计最后到详细设计,完成对整个系统的设计;第五章根据第四章的设计结果利用SQL—server2000和Visual Basic 6.0进行了具体的窗体和应用程序设计;总结部分介绍了设计体会和编程体会。 资料来源:中国毕业设计资料网( )

263 评论

小木每木每

我也是计算机的,今年毕业。本科的毕业设计一般性是不可以的,除了一些中外合作的学院。专科应该可以的。

103 评论

乐乐媚娘

cmdmodify.Enabled=false‘修改按钮可用对一楼补充下其余学习

272 评论

钉子生锈了

当然可以用VB写喽~关键是看你老师的要求~

234 评论

牛奶荡糕

除非是论文强制选定某种语言,你可以用任何语言来写程序,只要能达到论文的要求.

358 评论

相关问答

  • 网页程序毕业论文

    为了增加网页的吸引力和可理解性,以及互动性,网页设计所起的作用十分重要。下面是我为大家整理的网页设计 毕业 论文,供大家参考。 网页设计毕业论文摘要 摘要:

    红色芍药 2人参与回答 2023-12-11
  • vb程序开发毕业论文

    这里面有很多,你进去选一下,VB类毕业设计目录_VB毕业设计论文 双击自动滚屏 文章来源:一流设计吧 发布者:16sheji8 发布时间:2008-6-

    飛8469682648 6人参与回答 2023-12-09
  • 程序毕业论文

    计算机编程专业的同学们,大家毕业时,应该要书写一份专业论文。以下是我精心准备的浅谈宏程序编程论文,大家可以参考以下内容哦! 摘 要:随着现代制造技术的发展和数控

    金色年华119 3人参与回答 2023-12-06
  • vb毕业论文题目

    一、定义计算机毕业论文是计算机专业毕业生培养方案中的必修环节。学生通过计算机毕业论文的写作,培养综合运用计算机专业知识去分析并解决实际问题的能力,学有所用,不仅

    美人儿不哭 3人参与回答 2023-12-08
  • vb毕业论文范文

    【摘要】本论文叙述了我校学成绩管理的现状以及Visual basic6.0语言的概况。重点介绍了学生成绩管理系统的实现过程:包括系统分析、 系统调查、 数据流程

    歹徒通缉令 4人参与回答 2023-12-10