>백엔드 개발 >파이썬 튜토리얼 >Python의 데이터베이스 처리: SQLite 및 Redis

Python의 데이터베이스 처리: SQLite 및 Redis

王林
王林원래의
2023-09-04 19:37:12755검색

우리가 살고 있는 정보화 시대에는 세상이 얼마나 많은 데이터를 교환하고 있는지 알 수 있습니다. 우리는 기본적으로 광범위한 규모의 데이터를 생성, 저장 및 검색하고 있습니다! 이 모든 것을 처리할 수 있는 방법이 있어야 합니다. 아무런 관리 없이는 모든 곳으로 퍼질 수는 없습니다. 그렇죠? 데이터베이스 관리 시스템(DBMS)입니다.

A DBMS는 데이터베이스의 데이터를 생성, 저장, 수정, 검색 및 조작할 수 있는 소프트웨어 시스템입니다. 이러한 시스템은 개인용 컴퓨터에서만 실행되는 소규모 시스템부터 메인프레임에서 실행되는 대규모 시스템까지 크기도 다양합니다.

이 튜토리얼은 데이터베이스 설계가 아닌 Python에 중점을 둡니다. 예, Python은 데이터베이스와 상호 작용할 수 있는 능력이 매우 뛰어나며 이것이 바로 제가 이 튜토리얼에서 보여드릴 것입니다. Python을 사용하여 SQLite 및 Redis 데이터베이스로 작업하는 방법을 알아봅니다.

시작해 보세요!

Python 데이터베이스 API

위에서 언급했듯이 Python은 데이터베이스와 상호 작용할 수 있습니다. 하지만 어떻게 이런 일이 가능할까요? Python은 Python Database API라는 것을 사용하여 데이터베이스와 상호 작용합니다. 이 API를 사용하면 다양한 데이터베이스 관리 시스템(DBMS)을 프로그래밍할 수 있습니다. 그러나 코드 수준에서 따르는 프로세스는 다음과 같이 다른 DBMS에서도 동일합니다.

  1. 원하는 데이터베이스에 연결을 설정하세요.
  2. 데이터와 소통하기 위한 커서를 만듭니다.
  3. SQL을 사용하여 데이터를 조작합니다(대화형).
  4. 연결에 SQL 작업을 데이터에 적용하고 영구적으로 만들거나(Commit) 이러한 작업을 중단하도록 지시하여(Rollback) 데이터를 상호 작용이 발생하기 전의 상태로 되돌립니다.
  5. Close 데이터베이스 연결을 종료하세요.

SQLite

SQLite는 모든 기능을 갖춘 오픈 소스, 독립형(외부 라이브러리의 지원이 거의 필요하지 않음), 서버리스(데이터베이스 엔진을 실행하는 데 서버가 필요하지 않으며 로컬에 저장된 데이터베이스), 구성이 필요하지 않음(설치 또는 구성이 필요하지 않음)입니다. ), SQL 기반 경량 데이터베이스 관리 시스템(SQLite 테이블에서 SQL 쿼리를 실행할 수 있음)이며 a data 파일을 사용하여 데이터를 저장합니다.

SQLite는 Google, Apple, Microsoft 등과 같은 대기업에서 사용되므로 매우 안정적이라는 점을 언급할 가치가 있습니다. 이 튜토리얼에서는 SQLite를 사용하여 데이터베이스와 상호 작용합니다. 보다 구체적으로 Python에서 sqlite3 모듈을 사용합니다.

Python 및 SQLite

위에서 언급했듯이 데이터베이스를 사용하려면 다섯 가지 주요 단계가 필요합니다. 이러한 단계가 실제로 어떻게 진행되는지 살펴보겠습니다.

1. 원하는 데이터베이스에 연결하세요

이 단계는 다음과 같이 구현됩니다.

conn = sqlite3.connect('company.db')

sqlite3 문서에 명시된 대로:

이 모듈을 사용하려면 먼저 데이터베이스를 나타내는 Connection 개체를 만들어야 합니다.

위 코드에서는 데이터가 파일 company.db에 저장된다는 점에 유의하세요.

2. 데이터와 통신하기 위한 커서 만들기

데이터베이스 작업의 다음 단계는 아래와 같이 커서를 만드는 것입니다.

curs = conn.cursor()

3. SQL을 사용하여 데이터 조작

데이터베이스에 연결하고 커서를 생성한 후 이제 데이터를 처리(상호작용)할 수 있습니다. 즉, 이제 데이터베이스에서 SQL 명령을 실행할 수 있습니다 company.db.

회사 데이터베이스에 새 테이블 employee를 생성한다고 가정해 보겠습니다. 이 경우 SQL 명령을 실행해야 합니다. 이를 위해 company 中创建一个新表 employee。在这种情况下,我们需要运行 SQL 命令。为此,我们将使用 sqlite3 模块的 execute() 모듈의 execute() 메서드를 사용합니다. 따라서 Python 문은 다음과 같습니다.

curs.execute('创建表员工(姓名,年龄)')

이 명령문은 employee 的表,其中包含两列(字段)nameage라는 파일을 생성하는 SQL 명령을 실행합니다.

이제 아래와 같이 새로운 SQL 명령을 실행하여 테이블에 데이터를 삽입할 수 있습니다.

curs.execute("插入员工值('Ali', 28)")

아래와 같이 한 번에 여러 값을 삽입할 수도 있습니다.

值 = [('Brad',54), ('Ross', 34), ('Muhammad', 28), ('Bilal', 44)]

이 경우 execute(),而不是使用方法executemany() 메소드를 사용하여 위의 여러 값을 수행합니다.

curs.executemany('插入员工值(?,?)', value)

4. 변경사항 제출

이 단계에서는 이전 단계에서 변경한 내용을 적용(커밋)하려고 합니다. 간단하며 다음과 같습니다:

conn.commit()

5. 데이터베이스 연결을 닫습니다

작업을 수행하고 변경 사항을 커밋한 후 마지막 단계는 연결을 닫는 것입니다.

conn.close()

모든 단계를 스크립트에 넣어보겠습니다. 프로그램은 다음과 같습니다(먼저 모듈을 sqlite3가져와야 합니다):

으아악

스크립트를 실행하면 현재 디렉터리에 company.db라는 파일이 생성되어야 합니다. 다음 단계에서 사용할 것이므로 이 파일을 다운로드하세요.

6. 데이터베이스를 탐색해 보세요

데이터베이스와 테이블을 생성하고 일부 데이터를 추가한 후 내부 내용을 살펴보겠습니다 company.db(이전 섹션에서 다운로드한 파일). 이를 위해 우리는 SQLite용 DB 브라우저라는 훌륭한 도구를 사용할 것입니다. 계속해서 도구를 컴퓨터에 다운로드하십시오. 프로그램을 열면 다음과 같은 화면이 표시됩니다:

Python의 데이터베이스 처리: SQLite 및 Redis

상단의 Open Database 버튼을 사용하여 데이터베이스를 엽니다. 이 경우 아래와 같이 데이터베이스 구조를 얻어야 합니다.

Python의 데이터베이스 처리: SQLite 및 Redis

테이블이 나열되어 있습니다 employee,其中包含两个字段:nameage.

위 코드가 작동하고 데이터가 테이블에 추가되었는지 확인하려면 데이터 찾아보기 탭을 클릭하세요. 다음과 같은 내용이 표시됩니다.

Python의 데이터베이스 처리: SQLite 및 Redis

데이터베이스(company)和表(employee)가 생성되고 테이블에 데이터가 성공적으로 추가된 것을 확인할 수 있습니다.

레디스

Remote Dictionary Server(Redis라고도 함)는 인메모리 캐시 역할도 할 수 있는 강력한 NoSQL 데이터베이스입니다. Redis는 Salvatore Sanfilippo가 개발했으며 현재 Redis Labs에서 유지관리하고 있습니다. 소프트웨어는 C 프로그래밍 언어로 작성되었으며 오픈 소스(BSD 라이센스)입니다.

Redis의 가장 주목할만한 기능 중 하나는 데이터 구조 저장 메커니즘입니다. Python에서 동일한 데이터 유형(문자열, 집합, 정수, 목록, 사전 등)을 사용하여 Redis에 데이터를 저장할 수 있습니다. 이로 인해 Redis는 Python 개발자들 사이에서 인기 있는 선택이 되었습니다.

Redis 및 Python

데이터 구조 저장 메커니즘 외에도 Python 개발자는 Python 클라이언트가 많기 때문에 다른 NoSQL 데이터베이스보다 Redis를 선호합니다. 가장 인기 있는 선택은 아마도 redis-py일 것입니다. Redis-py는 Redis 서버에 다양한 데이터를 저장하기 위한 내장 명령을 제공합니다.

이제 Redis에 대한 기본적인 이해가 끝났으니, Redis에 데이터를 저장하는 방법을 배워보겠습니다. 계속하기 전에 컴퓨터에 Redis 서버가 설치되어 있는지 확인하세요.

1. Redis.py 클라이언트 설치

먼저 Python 스크립트용으로 redis-python이라는 새 폴더를 만듭니다. 그런 다음 Command Terminal을 사용하여 폴더로 이동하고 다음 명령을 실행하여 Redis 클라이언트를 설치합니다.

으아악

그런 다음 redis-pythonapp.py라는 파일을 만들고 텍스트 편집기로 엽니다. 다음 단계는 데이터베이스에 데이터를 추가하는 Python 스크립트를 만드는 것입니다.

2. Redis 클라이언트를 Redis 서버에 연결하세요

먼저 app.py에서 redis를 가져오고 Redis 서버 호스트 및 포트 주소에 대한 변수를 설정합니다.

으아악

다음으로 데이터베이스에 추가할 데이터를 정의합니다. 이 예에서는 간단한 Python 사전을 만듭니다.

으아악

다음으로 try... except 定义 add_to_db 函数。在 try 块中,我们连接到本地 Redis 服务器并将上述字典存储在数据库中,然后在控制台上输出值。如果代码失败,我们会在 except 블록을 사용하여 오류 개체를 인쇄합니다. 마지막 부분에서는 다음 기능이 실행됩니다:

으아악

3. 서버를 시작하고 코드를 실행하세요

먼저 명령 터미널에서 다음 명령을 실행하여 Redis 서버를 실행합니다.

으아악

서버가 활성화되면 다음 명령을 사용하여 Python 스크립트를 실행할 수 있습니다.

python app.py

如果一切顺利,包含用户配置文件的字典将使用 newUserOne 键添加到 Redis。此外,您应该在终端控制台上看到以下输出:

{
  'ID': '1', 
  'name': 'Kingsley Ubah', 
  'email': 'ubahthebuilder@gmail.com', 
  'role': 'Tech Writing', 
}

这就是 Redis 的全部内容!

结论

本教程仅触及使用 Python 处理数据库的皮毛。您可以从 sqlite3 模块了解更多方法,您可以在其中执行不同的数据库操作,例如更新和查询数据库。

要了解有关 redis-py 的更多信息,请立即阅读其完整文档。玩得开心!

위 내용은 Python의 데이터베이스 처리: SQLite 및 Redis의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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