ACCESS数据库在D盘名为bill.mdb
我用SQL2000 查询分析器 1.在SQL SERVER里查询access数据:
-- ======================================================
SELECT * 
FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0',
'Data Source="c:\DB.mdb";User ID=Admin;Password=')...表名
查出了数据。
想继续用查询分析器 把查询出来的数据插入到SQLSERVER数据库2.将access导入SQL server 
-- ======================================================
在SQL SERVER 里运行:
SELECT *
INTO newtable
FROM OPENDATASOURCE ('Microsoft.Jet.OLEDB.4.0', 
      'Data Source="c:\DB.mdb";User ID=Admin;Password=' )...表名
但是这个代码是把查询的数据插入到一个新表里面。我SQLSERVER数据里面已经有这个表了表名wkf_crm_dianhua。请问用什么代码可以插入到wkf_crm_dianhua 而不去建立新表。

解决方案 »

  1.   

    INTO into wkf_crm_dianhua 
    select * FROM OPENDATASOURCE ('Microsoft.Jet.OLEDB.4.0', 
          'Data Source="c:\DB.mdb";User ID=Admin;Password=' )...表名
      

  2.   

    insert into wkf_crm_dianhua 
    select * FROM OPENDATASOURCE ('Microsoft.Jet.OLEDB.4.0', 
          'Data Source="c:\DB.mdb";User ID=Admin;Password=' )...表名
      

  3.   

    已经存在的话 用insert into...
      

  4.   


    插入来的ACCESS 数据 插入 wkf_crm_dianhua表时候 插入错误: 列名或所提供值的数目与表定义不匹配。列是不一样的。可否在values里面写select * FROM OPENDATASOURCE ('Microsoft.Jet.OLEDB.4.0', 
          'Data Source="c:\DB.mdb";User ID=Admin;Password=' )...表名
      

  5.   

    insert into wkf_crm_dianhua(列名1,列名2,...) 
    select 列名1,列名2,... FROM OPENDATASOURCE ('Microsoft.Jet.OLEDB.4.0', 
          'Data Source="c:\DB.mdb";User ID=Admin;Password=' )...表名
    ---前后列名一一对应