728x90
반응형

SQLite 5

Sqlite3 데이터베이스에서 열 이름 목록을 얻는 방법

질문 : Sqlite3 데이터베이스에서 열 이름 목록을 얻는 방법은 무엇입니까? iPhone 앱을 새 데이터베이스 버전으로 마이그레이션하고 싶습니다. 저장된 버전이 없기 때문에 특정 열 이름이 있는지 확인해야합니다. 이 Stackoverflow 항목 은 선택을 제안합니다. SELECT sql FROM sqlite_master WHERE tbl_name = 'table_name' AND type = 'table' 결과를 구문 분석하십시오. 그게 일반적인 방법인가요? 대안? 답변 PRAGMA table_info(table_name); 모든 열 이름 목록이 표시됩니다. 출처 : https://stackoverflow.com/questions/947215/how-to-get-a-list-of-column-nam..

SQLite의 초당 INSERT 성능 향상

질문 : SQLite의 초당 INSERT 성능 향상 SQLite를 최적화하는 것은 까다 롭습니다. C 애플리케이션의 대량 삽입 성능은 초당 85 개의 삽입에서 초당 96,000 개 이상의 삽입까지 다양합니다! 배경 : 우리는 데스크톱 애플리케이션의 일부로 SQLite를 사용하고 있습니다. 애플리케이션이 초기화 될 때 추가 처리를 위해 구문 분석되고 SQLite 데이터베이스에로드되는 XML 파일에 저장된 많은 양의 구성 데이터가 있습니다. SQLite는 빠르고 특별한 구성이 필요하지 않으며 데이터베이스가 단일 파일로 디스크에 저장되기 때문에 이러한 상황에 이상적입니다. 근거 : 처음에 나는 내가보고있는 성능에 실망했습니다. SQLite의 성능은 데이터베이스 구성 방법과 API 사용 방법에 따라 크게 다를 ..

SQLite 데이터베이스에 한 번에 여러 행을 삽입 하는 방법

질문 : SQLite 데이터베이스에 한 번에 여러 행을 삽입 할 수 있습니까? MySQL에서는 다음과 같이 여러 행을 삽입 할 수 있습니다. INSERT INTO 'tablename' ('column1', 'column2') VALUES ('data1', 'data2'), ('data1', 'data2'), ('data1', 'data2'), ('data1', 'data2'); 그러나 이와 같은 작업을 시도하면 오류가 발생합니다. SQLite 데이터베이스에 한 번에 여러 행을 삽입 할 수 있습니까? 이를 수행하는 구문은 무엇입니까? 답변 BrianCampbell이 여기 에서 지적했듯이 SQLite 3.7.11 이상은 이제 원본 게시물의 더 간단한 구문을 지원합니다 . 그러나 표시된 접근 방식은 레거시 데..

Android에서 SQLite의 모범 사례

질문 : Android에서 SQLite의 모범 사례는 무엇입니까? Android 앱 내에서 SQLite 데이터베이스에 대한 쿼리를 실행할 때 모범 사례로 간주되는 것은 무엇입니까? AsyncTask의 doInBackground에서 삽입, 삭제 및 선택 쿼리를 실행하는 것이 안전합니까? 아니면 UI 스레드를 사용해야합니까? 데이터베이스 쿼리가 "무거울 수 있고"앱을 잠글 수 있으므로 UI 스레드를 사용하면 안된다고 가정합니다. 결과적으로 ANR (응용 프로그램 응답 없음 )이 발생합니다. AsyncTask가 여러 개인 경우 연결을 공유해야합니까, 아니면 각각 연결을 열어야합니까? 이러한 시나리오에 대한 모범 사례가 있습니까? 답변 삽입, 업데이트, 삭제 및 읽기는 일반적으로 여러 스레드에서 괜찮지 만 Br..

ATTACH로 열린 SQLite 데이터베이스 파일의 테이블을 나열하는 방법

질문 : ATTACH로 열린 SQLite 데이터베이스 파일의 테이블을 나열하는 방법은 무엇입니까? SQLite 데이터베이스 파일에서 테이블 및 해당 테이블 내의 행을 나열하는 데 사용할 수있는 SQL 은 무엇입니까 ? SQLite 3 명령 줄 도구 ATTACH 명령을 사용하여 연결하면? 답변 .tables 및 .schema "helper"함수는 ATTACH 된 데이터베이스를 조사하지 않고 "main"데이터베이스에 대해 SQLITE_MASTER 결과적으로 ATTACH some_file.db AS my_db; 그럼 당신은해야 SELECT name FROM my_db.sqlite_master WHERE type='table'; .tables 와 함께 표시되지 않습니다 sqlite_temp_master 위해 s..

728x90
반응형