客户端要操作远程SQL数据,即要数据稳定,又要速度快,还要客户端操作方便。
 
  1.如果用网页方示(如asp),客户端编辑数据肯定不方便,因为只能一行一行操作记录。  2.如果用BCP命令方示,可以实现,但很麻烦,数据传输前可先压输  3.直接用ADO连远程数据库,当记录较多时,不稳定,而且慢,用BDE好一点。
 
  4. 三层结构,没试过,不知效率如何? 如何将数据传输前压缩?

解决方案 »

  1.   

    RemObjectto: liuhengwinner 
    能具体些吗?
      

  2.   

    对远程,BDE确实好于ADO
    因为先前用Ado作的不行,才改为BDE
      

  3.   

    个人意见:1\ODBC方式(BDE很多股票期货软件是这样搞的)
    2\WebService+Soap
    3\VPN方式(ADO和本地处理一样,点不要太多哈)
    4\多层架够(有点麻烦)
      

  4.   

    个人意见: 1\ODBC方式(BDE很多股票期货软件是这样搞的) 
    >>我们公司的股票期货旧版用的就是BDE,原因是早期的ADO存在相当大的问题(不是效率原因),现在那套东西我已经没有兴趣去更改了。
    2\WebService+Soap 
    >>WebService追求的是统一性,灵活性,而不是效率,如果需要效率,完全不需要考虑,除非使用硬件对XML解析进行加速。
    3\VPN方式(ADO和本地处理一样,点不要太多哈)
    >>是否VPN,那仅仅只是一种网络环境,VPN并不等于带宽,或者说也有带宽问题存在。 
    4\多层架够(有点麻烦)
    >>在没有做之前,光想,那当然是麻烦。数据库的效率在于你设计数据库的水平,而不是访问方式,访问方式之间有相当的差别,但是他们之间的效率,仅仅只在于安全性当中的差别,如果效率上面能优化,我不相信Microsoft和Borland谁会劣于谁。就灵活性而言,当前比较好的选择还是DBX。如14楼所说的,除非印制报表,没有哪个用户会一笔笔将你发往客户端的几百上千万笔资料看完,不管屏幕再大,你给他一次性列出来一百多笔,已经够他看的了,而在他边看翻动的时候,再慢慢地给他增加小量后续数据,这个并不会影响到他所以为的“连续性”。另外就是关联性低频率数据的需时传输。需要注意的是,存在的东西就没有绝对的好,如果有了绝对的替代品,淘汰品自然出局。其实,BDE也近乎一个淘汰品。
      

  5.   

    一般有两种做法:
    1、本地上传到服务器或从服务器下传的做法:在客户机上用access或人个版的sqlserver2000,操作之前,先从服务器下传数据,然后在本机上操作,这样的速度肯定会快很多,这是以前很多公司的做法2、用vpn直接连接远程服务器,一般都是用ado连接的,几乎不需要bde当然这两种做法都是c/s结构,但各有优缺:
    第一种方法:优点是操作速度很快,毕竟是本机上操作。但是缺点是在服务器器端不能实时看到数据,要等待客户端上传数据才能看到真实的数据,所以客户端要不断的上传数据到服务器,而且还有不好是要维护客户端,成本加大第二种方法:优点是客户端的维护很少,可以实时查看数据。但是缺点是,操作的速度会比较慢,为了加快操作速度,必须选择一款比较好的数据库产品,同时要加大对数据库优化,是对整体的优化,做好这些,用户一般都可以接受速度的。关于数据压缩的问题,第一种就要考虑数据压缩,第二种不需要的。
      

  6.   

    to 18楼:
    1.上传和下载,即便是Access数据库,那也是需要占用带宽流量的,除非只有一个用户,否则无法实现数据的同步,或者需要花费大代价实现同步;
    2.VPN,首先需要硬件设施(把VPN的租用也算是硬件设施)为代价,同样的还是存在流量上面的代价,要想速度快,就需要有足够的带宽,不同带宽的VPN价格更是悬殊。不管是使用哪一种方式,都需要在兼顾效率的同时考虑数据的精减和压缩。
      

  7.   

    to 19楼:
    1.并不需要实时同步,在一定的时间上传和下载就可以了2.用软件VPN就足够的了,关键还是在选择数据库产品和优化手段
    因为做过,所以问题不是很大,但系统最好是用linux,不要用windows,速度简直无法比较。
      

  8.   

    to   19楼: 
    1.并不需要实时同步,在一定的时间上传和下载就可以了 2.用软件VPN就足够的了,关键还是在选择数据库产品和优化手段 
    =======================
    1.不需要同步,那只是部分应用当中,当涉及如最简单的例子,车票出售,不同步,那么这票还如何卖?
    2.难道软件VPN就不需要占用带宽?
      

  9.   

    "而且你所说的四种情况,都可以达到稳定,快,操作简单的功能吧,这主要看你的功力如何了,"这是对的,
    不过,简单的问题不要搞那么复杂:
    WEB SERVICE就行了,D对其有良好的支持.
    VPN也行,不过最好用硬的.
      

  10.   

    胡乱发表点意见!如果数据量不是很大的话<1M我认为用直接远程连接就可以了,这里要求你对数据库的操作是何种形式的?你的数据库是怎样支持你查询的,还有就是数据库查询算法上的优化问题了。说的比较茅草,请多指点!!用VPN的话也有很多的局限性,但主服务器的安全还需多考虑!
      

  11.   

    有现在的同步软件了。通用文件和数据库同步软件《同步专家网络版》数据同步演示文件:
    http://www.datsync.net/down.asp?file=download/dat演示.rar&name=数据库同步演示软件下载:
    http://www.ahjoe.com/prodnet.asp文件同步教程:
    http://www.ahjoe.com/netdoc.htm
      

  12.   

    现在我用三层试了,效果不错。前提是数据量不要一次读得太多。直接用ADO连数据库虽然简单,但必须把服务器挂在线上,很不安全,不可取。
    用WEB方式(包括用DLL),也不太好,服务器要装IIS,还要配置权限,也不安全,有时还会出现莫名其妙的问题。而且调试极为不便,dll文件一但调用,要重启电脑才能更新。用delphi的三层,用SocketConnection连接,效率高且编程方便,如果数据量大还可以先压缩。
      

  13.   

    远程服务器端做一个监视程序响应并执行SQL命令,查询后将查询结果用TADOQUERY SAVE为文件,压缩后传送到客户端,客户端解压后用TADOQUERY LOAD文件
      

  14.   

    我说一句啊   要是数据量大    最好将数据时时上传   比如作一个基于TCP/IP的 网络传输,这样数据即安全又稳定
      

  15.   

    僵哥,麻烦给看一个问题:
    http://topic.csdn.net/u/20080312/22/38ab41e5-692f-452d-b511-1302be9f4e33.html