2016-12-11 6 views
0

"카르타고 접근법"을 사용하여 SQLite.swift (0.18.1)를 설치할 수있었습니다.SQLite.swift를 사용하여 데이터베이스 (신규/기존)를 열 수 없습니다.

I "수입 SQLite는"일부 다른 물건을 할 수 있지만, 나는 다음과 같은 코드를 사용하여 데이터베이스를 열려고하면

let db = try Connection("~/db.sqlite3") 

을하고 완전한에서 멀리 내 프로그램을 (실행,하지만 난 그것은 내가 그 명령을 떠날 때와 같은 데이터베이스를 열려고 명령에 관련된 것처럼 나에게

dyld: Library not loaded: @rpath/libswiftCore.dylib 
    Referenced from: /Volumes/MBP-Data/rob/Library/Developer/Xcode/DerivedData/PFA-Analysis_(Swift)-advmptllvbeczrdcmjxnkcpsqogx/Build/Products/Debug/SQLite.framework/Versions/A/SQLite 
    Reason: image not found 
(lldb) 

보이는, 내 코드가 잘 실행 :)가 단계적으로 복용 해요, 나는 다음과 같은 불쾌한 오류 . 데이터베이스에 대한 다른 경로와 데이터베이스 확장의 다른 시도는 파일 자체에서 도움이되지 않았습니다. 사실, 아무런 차이가 없었습니다.

저는 꽤 새로 워서 어디에서부터 시작해야할지 모르겠으므로 속도를 높이는 데 도움이 될 것입니다.

답변

0

내가 알고있는 것은 (당신이 .sqlite 또는 .db 또는 .database을 가질 수 있도록) 내가 그렇게 한 적이

데이터베이스 파일 확장자는 문제가되지 않는다는 것입니다 :

var database: Connection { 
    return try! Connection(Constants.Database.databaseFilePath) 
} 

Constants.Database.databaseFilePath 인 경우

static let databaseFilePath = "\(NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask,true)[0])/\(databaseFileName)" 

databaseFileName

같은 것입니다
static let databaseFileName = "parky.db" 

databaseFilePath의 코드는 iOS 컨테이너 내부의 데이터베이스 파일의 실제 경로를 반환합니다. 그것이 내가 어떻게 작동하도록했는지입니다.

Carthage가 SQLite 라이브러리를 Xcode의 임베디드 프레임 워크에 추가했는지 확인하십시오. Carthage Documentation