2009-11-28 4 views
0

sqlite3 외에도 iPhone에서 사용할 수있는 다른 데이터베이스 엔진이 있습니까? textDb과 같은 것은 PHP, 단일 파일 및 서버용입니다.iPhone 용 Sqlite3 대안

+1

해결하려는 문제를 나타낼 수 있습니까? 귀하의 경우 SQLite에 어떤 문제가 있습니까? –

+0

문제는 * choice *입니다. 해결책은 질문에 대한 답변입니다. – luvieere

+1

sqlite3 *은 단일 파일이며 서버가 없습니다 .... –

답변

4

SQLite에는 많은 대안이 있지만, 다른 사람들이 지적한 바와 같이 SQLite를 사용하는 데는 약간의 요점이 있습니다.

첫째, SQLite는 우수한 단일 파일이 아닌 클라이언트 - 서버, 소형 풋 프린트 SQL 데이터베이스입니다 :

몇 가지 대안을 몇 가지 점을 지적하기 전에. 성능은 뛰어나고 비교적 작은 런타임이며 철저히 빠릅니다. 기술적으로 우월한 곳이나 인기있는 곳 근처의 모든 SQL 해석 대안은 없습니다.

둘째, iPhone 응용 프로그램에서 지속성을 유지하려면 CoreData를 사용해야합니다. 그렇지 않은 이유는 분명하지만, 드물다. Core Data는 Cocoa Touch와 완벽하게 통합 된 관계형 저장소에 대한 더 높은 수준의 매핑을 넘어서서도 매우 어려운 여러 문제를 해결합니다. 객체 그래프 관리, 효율적인 메모리 사용 (즉, 더 이상 필요하지 않을 때 메모리를 낭비) 및 지원을 취소 할 수 있습니다.

마지막으로 다른 데이터베이스 지속성 계층을 사용하기로 결정한 경우 iPhone 3G 이전 버전은 메모리가 제한된 런타임 환경입니다. 어떤 종류의 추가 라이브러리가 있어도 앱에서 사용할 수있는 작업 메모리가 크게 줄어들 수 있습니다.어떤 솔루션을 선택하든간에 은 가능한 한 적은 메모리를 사용하도록 최적화되어 있는지 확인하십시오.

그래서, 심각, 당신은 하지 사용 SQLite는 또는 CoreData를 찾고있는 경우이 중 하나를 당신이 호기심 때문에 그들은 적합하지 않거나 매우 드문 경우가 있기 때문이다. 호기심이라면, 음 ... 너에게 좋다!

대체품을 찾고있는 경우 SQLite 설명서에는 set of links to similar products이 포함되어 있습니다.

매우 희소 한 목록이며 작성자가 아무 것도 숨기고 있지 않기 때문에 아닙니다. SQLite는 정말 좋은 일을하기 때문에이 특정 휠을 다시 시도하고 다시 시도하려는 업계의 동기는 없습니다.Google, Adobe, GE, FireFox, Microsoft, Sun, REALBasic, Skype, Symbian, Apple, and others이 비 클라이언트/서버 관계형 지속성 요구 사항을 해결하기 위해 SQLite에서 거의 표준화 된 이유가 있습니다. 그냥 작동합니다.

+0

나는 그 페이지에서 경쟁자를 보았지만, 나는 코코아 - 아이폰 액세스 레이어가있는 것들에만 관심이있다. 실제로 나는 아이폰에서 사용할 수있다. – luvieere

+0

C (또는 C++)로 작성된 경우 iPhone에서 사용할 수 있습니다. 당신은 그것들을 이식해야 할 것입니다 (그다지 열악하지는 않을 것입니다). 그런 다음 장치의 메모리 요구 사항을 실제로 충족시킬 것인지 결정해야합니다. – bbum

-1

아니요. 누구나 SQLite에 만족할 것 같습니다.

+1

모두 - 1 명입니다. – luvieere

+0

아마 당신은 당신이 가리키는 -1입니다. 왜 그걸로 행복하지 않니? – rein

+1

단일 파일 DB를 내 응용 프로그램과 함께 포함 시키길 원합니다. sqlite가 아닌 다른 파일이 필요합니다. 나는 왜 사람들이 대안을 위해서 대안을 제안하는 것에 너무 꺼려하는지 모르겠다 - 나는 당신이 펩시 또는 다른 것을 요구하고있는 코카콜라에 무엇이 잘못된지 묻는 것과 같은 것을 본다. – luvieere

0

당신의 문제는 당신이 소프트웨어 제품과 같은 소프트웨어 라이브러리를 생각하고 있다고 생각합니다. 사람들은 여러 가지 이유로 인터넷 브라우저 사이에서 선택을 원합니다. 그러나 소프트웨어 라이브러리을 사용하면 한 가지 목적으로 설정됩니다. 그 목적을 충분히 충족시키지 못하면 이 아니어야합니다. 도서관.

NSObject을 좋아하지 않습니까? Core Foundation 라이브러리가 마음에 들지 않습니까? 그런 다음 직접 작성하십시오. 그러나 불행히도 과도하게 유추 된 유추를 끌어 올리려면 작업이 새롭고 혁신적인 바퀴를 만들지 않는 한 휠을 재발 명하지 마십시오.

SQLite 않습니다 수행 할, 그리고 그것은 아이폰 플랫폼에서 라이브러리로 제공됩니다. SQLite는 필요한 작업을 수행합니다. 을 해결할 수 없다면 공유하고 싶은 이유가있을 것입니다. 인터넷 브라우저 사이에서 선택하려면 선택의

자유는 괜찮지 만, 내가 뭔가를 해결하기 위해 귀중한 시간을 보내고, 그들의 방법의 외출을 위해 프로그래머로서, 하나는 매우 구체적인 이유을해야한다고 생각하는 이미 작동합니다. 인터넷 브라우저를 선택한 경우에도 여러 가지 이유 중 하나를 선택합니다.

+0

나는 호기심 많은 사람이며, 그들이 무엇인지 알기 위해 대안을 찾는 데 시간을 투자하고자합니다. 나는 수색하고, 발견에 실패했으며, 여기에 추가 입력을 요청했다. 저는 항상 새롭고 인상적인 것을 찾는 것에 관심이 있습니다. 인터넷 브라우저를 단지 호기심에서 테스트합니다. 대안을 탐색하고, 비교하고, 결론을 내릴 수 있습니다. 효율성이 아무리 좋더라도 대안이 없다면 지루할 수 있습니다. 라이브러리가 될 수도 있지만 XML 라이브러리, JSON 라이브러리 및 기타 iPhone에 대한 정보를 많이 보았습니다. 왜 더 많은 데이터베이스 엔진이 될 수 없었습니까? – luvieere

1

대체품을 찾고 있다면 Core Data라고 말하고 싶습니다. 저는 오랜 시간 동안 같은 질문을 가지고 있었고 심지어 일부 프로젝트에서 SQLite를 사용했습니다. 애플 엔지니어와 이야기 한 후에, 그는 코어 데이터가 내가 SQLite를 사용하고있는 모든 것을 할 수 있다고 지적했다. (주로 정보를 저장하고 몇 가지 방법으로 액세스하는 것).

나는 Core Data Programming Guide으로 시작하여 어떻게 할 것인지 찾고 있습니다.