设为首页收藏本站

Delphi乐园 开发者的家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 245|回复: 6

求助!关于delphi中实现将oracle中的表导出为.dbf文件,再将文件导入 [复制链接]

Rank: 4

  • TA的每日心情
    难过
    2012-3-20 19:41:18
  • 签到天数: 1 天

    [LV.1]初来乍到

    金钱
    60950
    12079
    0
    在线时间
    4 小时
    阅读权限
    10
    精华
    0
    积分
    0
    UID
    8
    发表于 2016-9-7 20:49:50 |显示全部楼层
    分享到:
    我看了论坛中有些解决筹划,然则挺不合适我的!麻烦高手把代码贴上来啊!感谢!!
    没有直接导出成dbf的,先大大oracle用一个query查出来,一条条的写入dbf文件

    dbf有一个零丁的组件tdbf 在 www.sourceforge.net/projects/tdbf
    procedure TForm1.SpeedButton1Click(Sender: TObject);

    var tablename:string;

    begin

      tablename:='test5.dbf';

      adoquery1.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Password="";Data Source=D:\dbf;Extended Properties=dbase 5.0;Persist Security Info=True';

      

    try

      begin

      with AdoQuery1 do

      begin

        close;

        sql.Clear;

        sql.Add('select * into '+tablename+' from SP_SOFTUSER in [ODBC][ODBC;Driver=Microsoft ODBC for Oracle;UID=SPARE_PART;PWD=MANAGER;SERVER=O9IDB]');

        ExecSQL;

      end;

      showmessage('成功导出为dbf文件.');

    end

    except

      showmessage('导出掉败!');

    end;

    end;



    这个法度榜样可以履行,如不雅在oracle数据库中新建一张表,则能成功经由过程。然则如不雅不是新表的话总提示“找不到输入表或萌芽”,请高手帮协助啊!!跪求代码!!!
    这个法度榜样可以履行,如不雅在oracle数据库中新建一张表,则能成功经由过程。然则如不雅不是新表的话总提示“找不到输入表或萌芽”,请高手帮协助啊!!跪求代码!!!



    ---------------留意:表名的大大小写。
    在oracle中表名都是大大写的呀!
    3楼中提到的缺点,哪位高手协助解决下啊!!感谢各位大年垂老大姐了!!

    我肯定表名决对精确,权限也是DBA了,然则履行时总掉足:microsoft jet 数据库引擎找不到输入表或萌芽'SP_SOFTUSER'。肯定它是否存在,以及它的名称的拼写是否精确。

    跪求解决筹划!!!在线等!!!高分酬谢!!!

    Rank: 8Rank: 8

  • TA的每日心情
    奋斗
    2014-4-23 19:02:09
  • 签到天数: 42 天

    [LV.5]常住居民I

    金钱
    67776
    13436
    0
    在线时间
    25 小时
    阅读权限
    10
    精华
    0
    积分
    0
    UID
    2050
    发表于 2016-9-7 21:03:51 |显示全部楼层
    我看了论坛中有些解决方案,但是挺不适合我的!麻烦高手把代码贴上来啊!谢谢!!

    使用道具 举报

    Rank: 4

    该用户从未签到

    金钱
    66600
    12512
    0
    在线时间
    626 小时
    阅读权限
    10
    精华
    0
    积分
    0
    UID
    412
    发表于 2016-9-7 21:04:51 |显示全部楼层
    没有直接导出成dbf的,先从oracle用一个query查出来,一条条的写入dbf文件

    dbf有一个单独的组件tdbf 在 www.sourceforge.net/projects/tdbf

    使用道具 举报

    Rank: 4

  • TA的每日心情

    2013-8-11 10:31:01
  • 签到天数: 1 天

    [LV.1]初来乍到

    金钱
    58881
    11668
    1
    在线时间
    0 小时
    阅读权限
    10
    精华
    0
    积分
    0
    UID
    7424
    发表于 2016-9-7 21:11:52 |显示全部楼层
    procedure TForm1.SpeedButton1Click(Sender: TObject);

    var tablename:string;

    begin

      tablename:='test5.dbf';

      adoquery1.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Password="";Data Source=D:\dbf;Extended Properties=dbase 5.0;Persist Security Info=True';

      

    try

      begin

      with AdoQuery1 do

      begin

        close;

        sql.Clear;

        sql.Add('select * into '+tablename+' from SP_SOFTUSER in [ODBC][ODBC;Driver=Microsoft ODBC for Oracle;UID=SPARE_PART;PWD=MANAGER;SERVER=O9IDB]');

        ExecSQL;

      end;

      showmessage('成功导出为dbf文件.');

    end

    except

      showmessage('导出失败!');

    end;

    end;



    这个程序可以执行,如果在oracle数据库中新建一张表,则能成功通过。但是如果不是新表的话总提示“找不到输入表或查询”,请高手帮帮忙啊!!跪求代码!!!

    使用道具 举报

    Rank: 4

    该用户从未签到

    金钱
    62730
    12098
    0
    在线时间
    222 小时
    阅读权限
    10
    精华
    0
    积分
    0
    UID
    972
    发表于 2016-9-7 21:16:52 |显示全部楼层
    这个程序可以执行,如果在oracle数据库中新建一张表,则能成功通过。但是如果不是新表的话总提示“找不到输入表或查询”,请高手帮帮忙啊!!跪求代码!!!



    ---------------注意:表名的大小写。

    使用道具 举报

    Rank: 4

  • TA的每日心情
    开心
    2012-12-4 09:27:44
  • 签到天数: 78 天

    [LV.6]常住居民II

    金钱
    63989
    12532
    7
    在线时间
    60 小时
    阅读权限
    10
    精华
    0
    积分
    0
    UID
    18
    发表于 2016-9-7 21:20:53 |显示全部楼层
    在oracle中表名都是大写的呀!

    使用道具 举报

    Rank: 4

    该用户从未签到

    金钱
    61463
    11718
    0
    在线时间
    119 小时
    阅读权限
    10
    精华
    0
    积分
    0
    UID
    814
    发表于 2016-9-7 21:25:53 |显示全部楼层
    3楼中提到的错误,哪位高手帮忙解决下啊!!谢谢各位大哥大姐了!!

    我确定表名决对正确,权限也是DBA了,但是执行时总出错:microsoft jet 数据库引擎找不到输入表或查询'SP_SOFTUSER'。确定它是否存在,以及它的名称的拼写是否正确。

    跪求解决方案!!!在线等!!!高分酬谢!!!

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    delphi乐园微信公众号

    手机版|Delphi乐园 ( 冀ICP备11023363号-7 )    

    GMT+8, 2016-10-23 02:21

    Powered by Discuz! X2

    © 2001-2011 Comsenz Inc.

    公网安备 14090202000504号

    回顶部