双11狂欢大促

盲盒赢 定制羽绒服

开启惊喜盲盒,抽取你的专属好礼

— 惊喜奖品抢先看 —

求救:在查询分析器中运行一个使用openrowset()函数从DBF导入到SQL Server表中的存储过程,执行期间强行关闭之后,无法再次执行!!

spoky spoky 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
1。在delphi程序中使用CreateProcess()新建一个进程,这个进程其实就是调用isqlw.exe(查询分析器)在后台运行一个使用openrowset()函数从一个DBF导入到SQL Server一个表中的存储过程,在这个isqlw.exe进程执行期间强行关闭这个isqlw.exe进程之后,以后再次执行同样的操作就出现错误。即时重新启动系统和服务器都无法正常运行这个存储过程了。

2。存储过程中使用的openrowset()函数如下:
insert tbl1(col1,col2)
select col1,col2 from OpenRowSet('MSDASQL','Driver=Microsoft Visual FoxPro Driver;SourceDB=C:\Table1.DBF;SourceType=DBF','select * from C:\Table1.DBF ')

3。运行期间出现错误提示:
服务器: 消息 7399,级别 16,状态 1,行 1OLE DB 提供程序 MSDASQL 报错。提供程序未给出有关错误的任何信息。OLE DB 错误跟踪[OLE/DB Provider MSDASQL ICommandText::Execute returned 0x80004005: 提供程序未给出有关错误的任何信息。]。

4。在还没有强行关闭线程之前,每天作同样的操作都是没有问题的。同时在出错之后,将这个SQL Server数据库放到其他机器上,执行同样的导入操作也都没有问题。

5。所以想问:是不是因为在openrowset()过程中出错之后,对SQL Server服务器或者这台电脑造成了什么影响,或者损坏了某些文件或者链接?有没有什么办法可以处理的呢?无限感激!!!
...全文

相关推荐

评论 5
收藏 已收藏
分享
返回顶部
spoky
数据库相关 2,508 成员 88,437 内容