2016-11-05 3 views
0

SQL Server에 연결된 서버가 sqlite 데이터베이스를 가리 킵니다. select 문은 실행할 수 있지만 삽입은 할 수 없습니다. 저널링 (journal_mode = off) 및/또는 임시 저장을 해제해야하는 것처럼 보입니다. 그것을하기위한 적절한 명령은 무엇입니까? 내가 현재 가지고 것은 :SQL Server가 sqlite 데이터베이스에 연결된 서버 - pragma 설정 방법?

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)".

나는 도움/조언을 부탁드립니다. 감사.

답변

0

SQLite의 경우 SELECT 문만 데이터를 반환하고 SELECT 문은 읽기 전용입니다.

연결된 서버에서 데이터를 읽고 반환하려면 OPENQUERY을 사용하십시오.
연결된 서버에서 다른 명령문을 실행하려면 EXECUTE을 사용하십시오.