问题意思如下:
1.有服务器A和B;A的数据库中有表Table_A,B的数据库中有表Table_B.假设Table_A和Table_B表结构相同.
2.现在要求将Table_A的数据导入到Table_B。
3.现在的实际情况是需要A将数据打包发送给B,然后B收到包后将数据加入表Table_B
注意:A可以随时丢一个数据包给B,B可在任何时侯将收到的数据包导到表中。
delphi 我刚上手,这类问题还没做过,各位给点思路或例子。只要能达到题目意思,其他方法都可。比较急。

解决方案 »

  1.   

    sendbuff()发送字符串,按照位数截取,再进行操作
      

  2.   

    用什么数据库?
    为什么要用发送数据包的方式?
    如果是SQL SERVER可以用OPENROWSET或OPENQUERY直接操作两个数据库,具体见帮助。如果非用发送数据包的方式,则可以用SOCKET。DELPHI自带一个聊天的例子,可以参考一下。
      

  3.   

    A机器,首先用ado控件连结数据库,并选取需要的数据,然后调用SaveToFile方法,将其保存为文件。
    这时,可考虑是否对文件进行压缩,然后传输。
    B机器收到包(可以监视某目录是否有包),如果包被压缩,则先解压缩。然后调用ADO控件的LoadFromFile方法,将数据读入。最后,按字段一一写入目标表。
      

  4.   

    我采用的是sql server,信息为用户注册信息
      

  5.   

    哈哈,我今天下午才使用这个办法,但是失败了,我也是才学的,当使用ADODATESET做SaveToFile后,生成的TXT文件一塌糊涂,没有格式,这样的文件怎么再导到B的表中?
    请大家给点方法呀。
      

  6.   

    注:我的A机在上海;B机在南京。A机是SQLSERVER,B机是ORACLE,两者只有公网IP呀。
    不好意思,接地方用用了,我两的问题相当。
      

  7.   

    adodataset1.SaveToFile('1.txt');后的结果是生成一个1.TXT,里面的记录:
     会员部    800026    ?004      鹏        高球部    800021    ?006      邓路      会员部    800022    ?007      舒荣花    高球部    800023    ?028      刘培培    高球部    800031    ?030      程郡      高球部    800033    ?032      吴海霞    高球部    800036    ?035      凌静      高球部    800039    ?039      汪淑琴    高球部    800042    ?040      陈艳霞    高球部    800043    ?041      汪艳云    高球部    800045    ?043      陈玉兰    高球部   ...这样的记录怎么在导回去呢?
      

  8.   

    adodataset1.SaveToFile('1.txt',pfXML);
    这样就可以了。
      

  9.   

    请问存成XML后,如何再导入ORACLE的表中?
      

  10.   

    直接使用adodataset1.loadfromfile不就可以了吗?
      

  11.   

    能说的再详细点吗,存成文件后,用ADODATASET.LOADFORMFIEL了,还怎么做啊。
      

  12.   

    ADODATASET.LOADFORMFIEL('1.txt');似乎没有什么反应呀?谁知道可否给个全例。
    传递文件的这个方法是否可行?因为如果是要插入而不是覆盖TABLE_B,似乎就麻烦了,是不是应该从TABLE_A中一条条的读,然后往table_B中一条条写呢?哪位高手指教呀。
      

  13.   

    dzogchen(雪茹),你这个是txt文件,不是XML格式的吧
      

  14.   

    用clientdataset不是更简单吗?
    clientdataset1.Delta里保存的就是被修改过的数据
      

  15.   

    我后来做的1.txt是XML格式的:<xml xmlns:s='uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882'
    xmlns:dt='uuid:C2F41010-65B3-11d1-A29F-00AA00C14882'
    xmlns:rs='urn:schemas-microsoft-com:rowset'
    xmlns:z='#RowsetSchema'>
    <s:Schema id='RowsetSchema'>
    <s:ElementType name='row' content='eltOnly' rs:updatable='true'>
    <s:AttributeType name='MOBILEID' rs:number='1' rs:writeunknown='true' rs:basetable='SHORTMESSAGEUSER1301' rs:basecolumn='MOBILEID'>
    <s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='15' rs:maybenull='false'/>
    </s:AttributeType>
    <s:AttributeType name='PARAMETER' rs:number='2' rs:nullable='true' rs:writeunknown='true' rs:basetable='SHORTMESSAGEUSER1301'
     rs:basecolumn='PARAMETER'>
    <s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='400'/>
    </s:AttributeType>
    <s:AttributeType name='BEGINTIME' rs:number='3' rs:nullable='true' rs:writeunknown='true' rs:basetable='SHORTMESSAGEUSER1301'
     rs:basecolumn='BEGINTIME'>
    <s:datatype dt:type='dateTime' rs:dbtype='timestamp' dt:maxLength='16' rs:scale='0' rs:precision='19' rs:fixedlength='true'/>
    </s:AttributeType>
    <s:AttributeType name='PROCESSFLAG' rs:number='4' rs:nullable='true' rs:writeunknown='true' rs:basetable='SHORTMESSAGEUSER1301'
     rs:basecolumn='PROCESSFLAG'>
    <s:datatype dt:type='number' rs:dbtype='numeric' dt:maxLength='19' rs:scale='0' rs:precision='1' rs:fixedlength='true'/>
    </s:AttributeType>
    <s:AttributeType name='PRIORITY' rs:number='5' rs:nullable='true' rs:writeunknown='true' rs:basetable='SHORTMESSAGEUSER1301'
     rs:basecolumn='PRIORITY'>
    <s:datatype dt:type='number' rs:dbtype='numeric' dt:maxLength='19' rs:scale='0' rs:precision='1' rs:fixedlength='true'/>
    </s:AttributeType>
    <s:AttributeType name='ROWID' rs:number='6' rs:nullable='true' rs:rowid='true' rs:basetable='SHORTMESSAGEUSER1301'
     rs:basecolumn='ROWID' rs:keycolumn='true' rs:hidden='true' rs:autoincrement='true'>
    <s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='18' rs:fixedlength='true'/>
    </s:AttributeType>
    <s:extends type='rs:rowbase'/>
    </s:ElementType>
    </s:Schema>
    <rs:data>
    <z:row MOBILEID='13909656018' BEGINTIME='2002-06-21T07:53:34' PROCESSFLAG='0' PRIORITY='1' ROWID='AAAI0oAADAAARRjAAA'/>
    <z:row MOBILEID='13956953586' BEGINTIME='2002-06-01T12:48:52' PROCESSFLAG='0' PRIORITY='1' ROWID='AAAI0oAADAAARRjAAB'/>
    <z:row MOBILEID='13805509138' BEGINTIME='2002-06-03T11:00:00' PROCESSFLAG='0' PRIORITY='1' ROWID='AAAI0oAADAAARRjAAC'/>
    <z:row MOBILEID='13705510167' BEGINTIME='2002-06
    ........