>백엔드 개발 >파이썬 튜토리얼 >Python은 필드를 인덱스로 쿼리하는 Sqlite의 방법을 구현합니다.

Python은 필드를 인덱스로 쿼리하는 Sqlite의 방법을 구현합니다.

WBOY
WBOY원래의
2016-08-04 08:55:391976검색

이 문서의 예에서는 Python이 Sqlite를 구현하여 필드를 인덱스로 쿼리하는 방법을 설명합니다. 참고하실 수 있도록 모든 사람과 공유하세요. 자세한 내용은 다음과 같습니다.

기본적으로 sqlite에서 얻은 데이터는 디지털 인덱스로 되어 있는데, 개발 단계에서 데이터베이스를 수정하는 경우가 많아서 사실 파이썬 소스코드에 해결책이 있습니다. sqlite3에서 조금 더듬어 해결한 계획은 다음과 같습니다.

기본적으로 연결하려면 숫자로 색인된 다음 코드를 사용하세요.

conn = sqlite3.connect(dbfile)
cur = conn.cursor()

얻은 결과 집합 인덱스를 필드별로 만들려면 함수와 클래스를 추가해야 합니다.

def dict_factory(cursor, row):
  d = {}
  for idx, col in enumerate(cursor.description):
    d[col[0]] = row[idx]
  return d
class MyCursor(sqlite3.Cursor):
  def __init__(self, *args, **kwargs):
    sqlite3.Cursor.__init__(self, *args, **kwargs)
    self.row_factory = dict_factory

그런 다음 연결 코드를 수정하세요.

conn = sqlite3.connect(dbfile)
cur = conn.cursor(factory=MyCursor)

그 이후에 읽은 내용은 필드별로 색인화됩니다.

더 많은 Python 관련 콘텐츠에 관심이 있는 독자는 이 사이트의 특별 주제인 "Python의 일반적인 데이터베이스 작동 기술 요약", "Python 데이터 구조 및 알고리즘 자습서", "Python 소켓 프로그래밍 기술 요약"을 확인할 수 있습니다. ", "Python 함수 사용 팁" 요약", "Python 문자열 작업 기술 요약", "Python 소개 및 고급 클래식 자습서" 및 "Python 파일 및 디렉터리 작업 기술 요약"

이 기사가 Python 프로그래밍에 종사하는 모든 사람에게 도움이 되기를 바랍니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.