VB编程经验小结-Read.docVIP

  • 10
  • 0
  • 约2.24万字
  • 约 50页
  • 2018-12-13 发布于天津
  • 举报
VB编程经验小结-Read.doc

VB编程经验小结: 1. HYPERLINK /keywords/vb.html \t _blank VB中动态加载ODBC数据源的方法: ? Sub ? RegisterDataSource() ? ? ?   Dim ? strAttribs ? As ? String ? ? ?   ’建造关键字字符串。 ? ? ?   ’C:\myfile\myexample.l.mdb数据库文件名(包含路径) ? ? ?   strAttribs ? =“DBQ=” ? _ ? ? ?   & ? “C:\myfile\myexample.mdb” ? _ ? ? ?   & ? Chr$(13) ? & ? “OemToAnsi=No” ? _ ? ? ?   & ? Chr$(13) ? & ? “SERVER=SEQUEL” ? _ ? ? ?   & ? Chr$(13) ? & ? “Network=DBNMPNTW” ? _ ? ? ?   & ? Chr$(13) ? & ? “Database=WorkDB”_ ? ? ?   & ? Chr$(13) ? &“Address=\\SEQUEL\PIPE\SQL\QUERY” ? ? ?   ’建立新的注册的 ? DSN。 ? ? ?   rdoEngine.rdoRegisterDataSource ? “mydatasource”, ? ? ?   “Microsoft ? Access ? Driver ? (*.mdb)”, ? True, ? ? ?   strAttribs ? ? ?   End ? Sub ? ? ?   Private ? Sub ? Form_Load() ? ? ?   Call ? rdoRegisterDataSource ? ? ?   End ? Sub ? ?    2.通过相对路径指定数据库文件 在很多情况下,不管采用上述哪一种方法打开数据库,都必须在程序设计时就指定需要打开的数据库文件。但是,我们通常不能保证该软件完成后一定会被安装在每台机器的同一目录下。因此该数据库文件的绝对路径一般在设计时还难以完全确定,只能采用相对路径的办法来解决这个问题。 在VB中,App对象是一个全局对象,用来提供当前应用程序的相关信息,其Path属性反映的是当前应用程序的可执行文件(.exe)所在的绝对路径,并且只在程序运行时才有效。通过使用App对象的Path属性,可以方便地获得当前程序所在的目录路径。因此,如果把数据库文件存放在与程序路径相关的目录下,便可以在程序设计时就指定数据库文件的相对路径,当程序运行时,通过App对象的Path属性动态地获取其绝对路径。 下面的一段代码,用来在程序开始运行时获取程序的路径,并赋值给变量AppPath,然后在数据控件Data1的Database Name属性中与数据库文件的相对路径Database\Sample.Mdb结合,组成数据库文件的绝对路径。这段代码通常出现在Form-Load中: Sub Form_load() Dim AppPath As String 设置路径变量 AppPath=App.Path 获取程序路径 If Right(AppPath,1)\Then AppPath=AppPath+\   若路径尾部没有\,则添加之   Data1.Database Name=AppPath+Database\Sample.mdb   与相对路径结合,组成绝对路径 end sub 3.将datenvironment做为活动连接供查询使用 with rs ?  ?  .activeconnect=datenvironment1.connect1 ?  .open select * from table   end with 4.记录分组和参数查询: 这两项工作都是在Command对象的属性页中设置。将记录按某个字段分组:先设置好Connection1连接和Command1的数据源,然后在Command1的属性页“分组”选项卡上选中“分组命令对象”复选框,然后从左边选择一个字段添加到右边框中,确定即可。这样生成的记录集便具有了层次性,和GROUP BY的效果是一样的,可以用MSHflexgrid或报表Data Report来绑定。 使用带单个参数的SQL查询:在Command1的属性页“通用”卡上选中使用“SQL语句”生成记录集,然后输入在WHERE子句中带?问号的查询:SELECT [name],[money] FROM [invoice] WHERE [name] LIKE ?。这个问号就是一个参数,可以在代码中赋值,生成不同记录集。

文档评论(0)

1亿VIP精品文档

相关文档