2012-05-06 3 views
0

내 iOS 프로그램이 서버의 [A.sqlite3] 파일을 다운로드합니다.db 테이블을 동일한 데이터베이스에 저장하려고합니다. 방법?

내 아이폰 OS는

나는 지역 아이폰 OS에서 b.sqlite3의 테이블과 A.sqlite3의 테이블에 참여하고자하는 지역

이미 [b.sqlite3] 파일이 있습니다.

그러나 테이블의 데이터베이스가 다르기 때문에 테이블을 조인 할 때 문제가 있습니다.

어떻게 동일한 데이터베이스에 테이블을 넣을 수 있습니까?

+1

가능성이 중복됩니다 [이 질문] (http://stackoverflow.com/questions/6495204/joins-across-multiple-sqlite-db-files). 하나는 Android이지만 SQLite API는 동일합니다. – theory

답변

0

sqlite ATTACH 구문을 사용할 수 있습니다. 당신이 데이터베이스 A.sqlite3에서 테이블 A 및 데이터베이스 B.sqlite3에서 테이블 B는 한 가정, 명령 줄에서, 단계는 다음과 같습니다

ATTACH
$ sqlite3 A.sqlite3 
sqlite> ATTACH 'B.sqlite3' AS dbB; 
sqlite> SELECT a.*,dbB.b.* FROM a,dbB.b WHERE (a.id = dbB.b.id); 

가 추가 데이터베이스에 접두사 파일을 제공하는 당신은 SQL 문에서 사용할 수 있습니다.

iPhone 응용 프로그램에서 이전처럼 A.sqlite3 데이터베이스를 연 다음 다른 sql 명령을 전달하는 것처럼 sql ATTACH 명령을 sqlite 라이브러리에 전달하고 전체 경로 이름을 붙이다.

관련 문제