SQL Server链接服务器到sqlite数据库 - 如何设置编译指示?

时间:2016-11-05 01:42:55

标签: sql-server sqlite linked-server

我有SQL Server链接服务器指向sqlite数据库。我可以执行select语句,但不能执行插入操作。好像我必须关闭日记(journal_mode = off)和/或临时存储。这样做的正确命令是什么?我现在拥有的是:

select * 
from openquery([name of my linked server], 'PRAGMA temp_store=2') 

错误是:

  

无法处理对象" PRAGMA temp_store = 2"。 OLE DB提供程序" MSDASQL"对于链接服务器"服务器名称"表示该对象没有列,或者当前用户没有该对象的权限。

无法插入数据的命令是:

insert openquery ([name of my linked server], 'select * from table1')

select top 1 * from table1 -- table 1 in sql server has the same structure as table 1 in sqlite.

错误是:

  

OLE DB提供程序" MSDASQL"对于链接服务器" [我的链接服务器的名称]"返回消息"无法打开数据库文件(14)"。

我将非常感谢帮助/建议。感谢。

1 个答案:

答案 0 :(得分:0)

使用SQLite,只有SELECT语句返回数据,SELECT语句是只读的。

要从链接服务器读取和返回数据,请使用OPENQUERY 要在链接服务器上执行任何其他语句,请使用EXECUTE