2014-04-14 2 views
0

https://github.com/p2/Redland-ObjC을 사용하려고합니다. iOS에서 제대로 컴파일되어 실행되어 iOS sqlite3 데이터베이스에 RDF 트리플을 저장합니다. 그러나 문서는 매우 가벼우 며 Redland-ObjC는 메모리 내 해시 테이블과 함께 Redland 저장소 만 사용하는 것처럼 보입니다.Redland-ObjC를 사용하여 iOS에서 Redland RDF 저장소로 Sqlite3 사용

그러나 Readim에서 https://github.com/p2/Redland-ObjC에 언급 된 바에 따르면 영구 저장소를 사용하기 위해 libsqlite3을 포함 할 수 있습니다.

가능합니까? 그렇다면 Redland에게 ios의 sqlite3 API를 사용하도록 알려주는 방법은 무엇입니까? (나는 그것을하지 않는 https://github.com/p2/Redland-ObjC에 어떤 코드도 보이지 않는다).

고마워요.

답변

2

나는 나 자신과 나의 목적은-C가 녹슨 래퍼를 사용하지만, 소스를 읽는 당신이 할 수있는 것을 제안하지 않은 다음

  • [RedlandStorage initWithFactoryName:@"sqlite" identifier:@"databasename.sqlite" options:@""] 같은

    를 사용하여 뭔가 새로운 sqlite가 저장 개체를 만들 .

  • 보조 모델 storage을 보조 저장소로 사용하여 [RedlandModel initWithStorage:storage]과 같은 것을 사용하여 새 모델을 만듭니다. (기본 [RedlandModel init]은 기본 메모리 hashes 백업 저장소로 모델을 생성합니다.)

그런 다음 당신은 다른 모델과 함께 할 것입니다 무엇이든.

+0

그래서 내가하려고했는데 오류가 발생했습니다. Redland Error 0 : { facility = 14; 레벨 = 4; locator = "<00000000>"; message = "SQLite 데이터베이스 db SQL exec 'BEGIN IMMEDIATE;' 실패 - (null) (21) "; 나는 어떻게 든 데이터베이스를 처음 만들 필요가 있다고 생각하니? – webaba

+0

그래, 아직 존재하지 않으면'new = 'yes'를'options' 문자열에 추가하십시오. – laalto

+0

감사의 친구, 여전히 같은 오류가 발생하지만, 나는 Red Hat 소스가 ios sqlite 데이터베이스에 기본적으로 액세스 할 수 있는지 확인하려고 시도 할 것입니다. – webaba