CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VB >  数据库(包含打印,安装,报表)

如何通过程序实现 把vb后台的数据库存到a盘??急!

楼主cxa_2002(萱)2002-09-14 17:16:22 在 VB / 数据库(包含打印,安装,报表) 提问

我想在表单里加一个command控件,命名为:存盘  
  目的是:想让用户直接点击这个按钮   即可通过程序实现把后台数据库或者是数据库里的某一张表(最好是某一张表)自动存到a盘里。。  
   
  各位能否帮我出出主意,有什么方法可以实现?  
  这个命令里的代码,该如何写才是??  
   
  尽可能详细讲讲,谢谢  
  我用的数据库是access 问题点数:100、回复次数:6Top

1 楼cxa_2002(萱)回复于 2002-09-14 20:04:25 得分 0

up一下Top

2 楼JennyVenus()回复于 2002-09-14 20:52:10 得分 0

什么意思,看你的目的就是从access中读取数据,写文件呀Top

3 楼cxa_2002(萱)回复于 2002-09-15 18:55:55 得分 0

具体说:就是当用户点了这个按钮的时候,系统会弹出保存文件的对话框,  
  提示用户保存数据库,用户可以自由选择保存路径,比如:a盘  
  如果能把数据库的资料转换成文本再保存也可以  
   
  我不知道如何编写这个代码,请大家提示一下  
   
   
  up一下Top

4 楼Latitude(Henry[MS MVP])回复于 2002-09-15 22:55:23 得分 20

如果想存成a盘里的文本,不是很难的事。  
  示例如下:  
  1)我的数据库有一个表Henry,有三个字段:  
     
  2)转存的目标:   字段1           |字段2                 |字段3 各字段间空开20个字节  
  两个难点:  
   转存,汉字的字节位置(方法是:lenb(strconv(Expression))把汉字转成两个字节处理)  
   
  窗体:一个文本框:txtmdb   ,一个按钮:cmbSave   ,   一个表格:Datagrid1,一个ADODC:Adodc1  
  代码:  
  Dim   strDbname   As   String  
  Dim   intFilenum   As   Integer  
  Dim   strRecord   As   String'用于保存字段行  
  Dim   strRecord1   As   String'用于保存字段一  
  Dim   strRecord2   As   String'用于保存字段二  
  Dim   strRecord3   As   String'用于保存字段三  
   
  Private   Sub   Form_Load()  
   txtmdb.Text   =   App.Path   &   "\database.mdb"   '数据库的路径可以自己另写  
   strDbname   =   Trim(txtmdb.Text)  
   Adodc1.CommandType   =   adCmdText  
   Adodc1.ConnectionString   =   "Provider=Microsoft.Jet.OLEDB.4.0; _  
                        Data   Source="   &   strDbname   &   ";Persist   Security   Info=False"  
   Adodc1.RecordSource   =   "select   *   from   Henry"   'Henry是表名  
   Adodc1.Refresh  
  End   Sub  
   
  Private   Sub   cmdSave_Click()  
  On   Error   Resume   Next  
           
          strRecord   =   ""  
          intFilenum   =   FreeFile  
          '建议你调试时,先用app.path   &   "\dbfile.txt"代替"a:\dbfile.txt"  
          If   Dir(   "a:\dbfile.txt")   =   ""   Then    
            '看看a盘有没有这个文件,建议先做个a驱中有无盘的判断  
                  Open   "a:\dbfile.txt"   For   Output   As   #intFilenum  
                  Close   #intFilenum  
          Else  
                  Kill   "a:\dbfile.txt"   '有就删除掉  
          End   If        
       
          intFilenum   =   FreeFile  
          Open   "a:\dbfile.txt"   For   Append   As   #intFilenum  
                   
          For   intTempi   =   0   To   Adodc1.Recordset.RecordCount   -   1     '主要就是这一段了  
                strRecord1   =   ""  
                strRecord2   =   ""  
                strRecord3   =   ""  
                strRecord   =   ""  
                strRecord1   =   Adodc1.Recordset.Fields(0).Value   &   _  
                      Space(20   -   LenB(StrConv(Adodc1.Recordset.Fields(0).Value,   vbFromUnicode)))  
                strRecord2   =   Adodc1.Recordset.Fields(1).Value   &   _  
                      Space(20   -   LenB(StrConv(Adodc1.Recordset.Fields(1).Value,   vbFromUnicode)))  
                strRecord3   =   Adodc1.Recordset.Fields(2).Value   &   _  
                      Space(20   -   LenB(StrConv(Adodc1.Recordset.Fields(2).Value,   vbFromUnicode)))  
                strRecord   =   strRecord1   &   "|"   &   strRecord2   &   "|"   &   strRecord3  
                     
                Print   #intFilenum,   strRecord  
                Adodc1.Recordset.MoveNext  
          Next  
   
        Close   #intFilenum  
  End   Sub  
   
  ---  
      我已经测试通过了,没有任何明显问题  
   
                                                                         by   Henry    
  Top

5 楼wwwxjjj(wwwxjjj)回复于 2002-09-15 23:29:28 得分 0

以上的方法都麻烦.  
  dim   mRs   as   new   recordset  
  .....  
  mrs.open   [表|过程|查寻|...]  
  mrs.save   (文件名)  
  就完事了Top

6 楼cxj_2000(永远到底有多远?)回复于 2002-09-17 20:15:31 得分 80

Dim   fsoSys   As   New   Scripting.FileSystemObject    
    Dim   fsoFile   As   File  
    Set   fsoFile   =   fsoSys.GetFile("f:\course   system\course_info_e.mdb")  
           
    fsoFile.Copy   ("d:\新建文件夹\course_info_e.mdb")  
    Set   fsoFile   =   NothingTop

相关问题

  • vb库存小程序,达人帮忙啊!!!!!!!!!!!!!!!!!!!!!!!!!!谢谢
  • vb库存小程序,达人帮忙啊!!!!!!!!!!!!!!!!!!!!!!!谢谢
  • 谁有SQL后台,VB前台的典型管理程序?
  • 怎么能让VB的EXE程序在后台运行?
  • VB程序能否实现后台下载文件?
  • 如何编后台程序
  • 前后台程序问题
  • 后台程序的问题
  • 后台程序分离
  • [求助]如何在asp.net后台代码中执行用户前台输入的vb程序呢?

关键词

  • 字段
  • 数据库
  • 代码
  • 用户
  • strrecord
  • adodc
  • 保存
  • txtmdb
  • a盘
  • strdbname

得分解答快速导航

  • 帖主:cxa_2002
  • Latitude
  • cxj_2000

相关链接

  • Visual Basic类图书
  • Visual Basic类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo