Python 서버 프로그래밍: PyMySQL을 사용하여 MySQL 데이터베이스와 상호작용
Python은 다양한 유형의 애플리케이션을 개발하는 데 사용할 수 있는 풍부한 라이브러리와 프레임워크를 갖춘 인기 있는 고급 프로그래밍 언어입니다. 서버 프로그래밍 분야에서 Python은 웹 애플리케이션 개발뿐만 아니라 다양한 데이터베이스와 상호 작용하는 데에도 사용될 수 있습니다.
이 글에서는 Python을 사용하여 MySQL 데이터베이스와 상호 작용하는 방법을 소개합니다. 우리는 PyMySQL을 Python용 라이브러리로 사용하여 MySQL과 상호 작용할 것입니다.
1. PyMySQL 라이브러리 설치
PyMySQL 라이브러리를 사용하기 전에 먼저 설치해야 합니다. 터미널이나 명령 프롬프트를 열고 다음 명령을 입력하여 설치합니다:
pip install PyMySQL
2. MySQL 데이터베이스에 연결
MySQL 데이터베이스에 연결하려면 MySQL 서버의 호스트 이름, 포트 번호, 사용자 이름 및 비밀번호를 알아야 합니다. .
다음 Python 코드를 사용하여 MySQL 데이터베이스에 연결할 수 있습니다.
import pymysql # 打开数据库连接 db = pymysql.connect(host='localhost', port=3306, user='root', password='', database='test') # 关闭数据库连接 db.close()
이 코드에서는 pymysql
라이브러리의 connect()
함수를 사용하여 연결했습니다. MySQL 데이터베이스에. 이 기능의 매개변수에는 호스트 이름, 포트 번호, 사용자 이름 및 비밀번호와 같은 정보가 포함됩니다. pymysql
库的connect()
函数来连接到MySQL数据库。该函数的参数包括主机名、端口号、用户名和密码等信息。
此外,我们还指定了要连接的数据库的名称,该名称是通过database
参数传递的。在下面的代码中,我们将继续使用此连接。
3.创建表
在与MySQL数据库进行交互之前,我们需要创建一个表。我们可以使用以下Python代码在MySQL数据库中创建一个名为users
的表:
import pymysql # 打开数据库连接 db = pymysql.connect(host='localhost', port=3306, user='root', password='', database='test') # 创建表 cursor = db.cursor() cursor.execute('DROP TABLE IF EXISTS users') sql = '''CREATE TABLE users ( id INT(11) NOT NULL AUTO_INCREMENT, name VARCHAR(20) NOT NULL, email VARCHAR(30) NOT NULL, password VARCHAR(30) NOT NULL, PRIMARY KEY (id))''' cursor.execute(sql) # 关闭数据库连接 db.close()
在此代码中,我们定义了一个名为users
的表,并定义了四个列:id
、name
、email
和password
。其中,id
是主键,使用INT
数据类型,name
和email
是使用VARCHAR
数据类型保存的字符串,password
也是使用VARCHAR
数据类型保存的字符串。表的创建过程使用了MySQL的SQL语句。注意,我们还在users
表中设置了自动增量列,该列将自动递增。
4.插入数据
现在,我们已经创建了users
表,可以开始向该表中插入数据了。我们可以使用以下Python代码将一些数据插入到该表中:
import pymysql # 打开数据库连接 db = pymysql.connect(host='localhost', port=3306, user='root', password='', database='test') # 插入数据 cursor = db.cursor() sql = "INSERT INTO users(name, email, password) VALUES (%s, %s, %s)" values = [('Alice', 'alice@email.com', '123456'), ('Bob', 'bob@email.com', '789012'), ('Charlie', 'charlie@email.com', '345678')] cursor.executemany(sql, values) db.commit() # 关闭数据库连接 db.close()
在此代码中,我们首先使用executemany()
函数将多个数据插入到users
表中。该函数的第一个参数指定要执行的SQL语句,第二个参数是一个包含要插入的数据的元组或列表。注意,我们使用了占位符%s
来表示要插入的实际值。
在调用executemany()
函数后,我们必须调用commit()
方法使数据被保存到数据库中。
5.查询数据
要从users
表中检索数据,我们可以使用以下Python代码:
import pymysql # 打开数据库连接 db = pymysql.connect(host='localhost', port=3306, user='root', password='', database='test') # 查询数据 cursor = db.cursor() sql = "SELECT * FROM users" cursor.execute(sql) results = cursor.fetchall() for row in results: id = row[0] name = row[1] email = row[2] password = row[3] print("{} - {} - {} - {}".format(id, name, email, password)) # 关闭数据库连接 db.close()
在此代码中,我们使用SELECT
语句从users
表中检索所有行。然后,使用fetchall()
方法获取所有检索到的行,并使用循环将每一行作为元组处理。最后,我们根据每一行的列值打印输出结果。
6.更新数据
要更新users
表中的数据,我们可以使用以下Python代码:
import pymysql # 打开数据库连接 db = pymysql.connect(host='localhost', port=3306, user='root', password='', database='test') # 更新数据 cursor = db.cursor() sql = "UPDATE users SET password = %s WHERE name = %s" values = ('abcdef', 'Alice') cursor.execute(sql, values) db.commit() # 关闭数据库连接 db.close()
在此代码中,我们使用UPDATE
语句将名为Alice
的用户的密码更新为abcdef
。该代码使用了带参数的SQL语句,其中%s
是占位符。我们还将要更新的实际值包装在元组中,然后传递给execute()
函数。
7.删除数据
要从users
表中删除数据,我们可以使用以下Python代码:
import pymysql # 打开数据库连接 db = pymysql.connect(host='localhost', port=3306, user='root', password='', database='test') # 删除数据 cursor = db.cursor() sql = "DELETE FROM users WHERE email = %s" value = ('bob@email.com',) cursor.execute(sql, value) db.commit() # 关闭数据库连接 db.close()
在此代码中,我们使用DELETE
语句删除电子邮件为bob@email.com
的用户。
总结
在本文中,我们介绍了如何使用Python与MySQL数据库进行交互,并使用了pymysql
database
매개변수를 통해 전달되는 연결할 데이터베이스의 이름도 지정합니다. 아래 코드에서는 이 연결을 계속 사용합니다. 🎜🎜3. 테이블 만들기🎜🎜MySQL 데이터베이스와 상호작용하기 전에 테이블을 만들어야 합니다. 다음 Python 코드를 사용하여 MySQL 데이터베이스에 users
라는 테이블을 생성할 수 있습니다. 🎜rrreee🎜 이 코드에서는 users
라는 테이블을 정의했습니다. 그리고 4개의 열은 다음과 같습니다. 정의됨: id
, name
, email
및 password
. 그 중 id
는 INT
데이터 유형을 사용하는 기본 키이고 name
및 email
은 를 사용합니다. >VARCHAR code> 데이터 유형에 저장된 문자열, <code>password
도 VARCHAR
데이터 유형에 저장된 문자열입니다. 테이블 생성 프로세스에서는 MySQL SQL 문을 사용합니다. users
테이블에 자동으로 증가하는 자동 증가 열도 설정되어 있습니다. 🎜🎜4. 데이터 삽입🎜🎜이제 users
테이블을 만들었으므로 테이블에 데이터 삽입을 시작할 수 있습니다. 다음 Python 코드를 사용하여 이 테이블에 일부 데이터를 삽입할 수 있습니다. 🎜rrreee🎜 이 코드에서는 먼저 executemany()
함수 >Table을 사용하여 users
에 여러 데이터를 삽입합니다. 이 함수의 첫 번째 매개변수는 실행할 SQL 문을 지정하고, 두 번째 매개변수는 삽입할 데이터가 포함된 튜플 또는 목록입니다. 삽입할 실제 값을 나타내기 위해 자리 표시자 %s
를 사용합니다. 🎜🎜 executemany()
함수를 호출한 후 commit()
메서드를 호출하여 데이터를 데이터베이스에 저장해야 합니다. 🎜🎜5. 데이터 쿼리🎜🎜 users
테이블에서 데이터를 검색하려면 다음 Python 코드를 사용할 수 있습니다. 🎜rrreee🎜이 코드에서는 SELECT
문을 사용합니다. from users
테이블에서 모든 행을 검색합니다. 그런 다음 fetchall()
메서드를 사용하여 검색된 모든 행을 가져오고 루프를 사용하여 각 행을 튜플로 처리합니다. 마지막으로 각 행의 열 값을 기반으로 출력을 인쇄합니다. 🎜🎜6. 데이터 업데이트🎜🎜 users
테이블의 데이터를 업데이트하려면 다음 Python 코드를 사용할 수 있습니다. 🎜rrreee🎜이 코드에서는 UPDATE
를 사용합니다. 명령문 to Alice
라는 사용자의 비밀번호가 abcdef
로 업데이트됩니다. 이 코드는 매개변수가 있는 SQL 문을 사용합니다. 여기서 %s
는 자리 표시자입니다. 또한 업데이트할 실제 값을 튜플로 래핑하여 execute()
함수에 전달합니다. 🎜🎜7. 데이터 삭제🎜🎜 users
테이블에서 데이터를 삭제하려면 다음 Python 코드를 사용할 수 있습니다. 🎜rrreee🎜이 코드에서는 DELETE
문을 사용하여 삭제합니다. 이메일 주소는 bob@email.com
입니다. 🎜🎜요약🎜🎜이 기사에서는 Python을 사용하여 MySQL 데이터베이스와 상호 작용하는 방법을 소개하고 pymysql
라이브러리를 Python과 MySQL 사이의 브리지로 사용했습니다. 웹 애플리케이션을 개발할 때 자주 수행하는 일반적인 작업인 MySQL 데이터베이스에 연결하고, 테이블을 생성하고, 데이터를 삽입하고, 데이터를 업데이트하고, 데이터를 삭제하는 방법을 배웠습니다. 이러한 기술을 익히면 Python을 사용하여 강력한 서버 애플리케이션을 구축하고 다양한 데이터베이스와 상호 작용할 수 있습니다. 🎜위 내용은 Python 서버 프로그래밍: PyMySQL을 사용하여 MySQL 데이터베이스와 상호작용의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











PHP는 주로 절차 적 프로그래밍이지만 객체 지향 프로그래밍 (OOP)도 지원합니다. Python은 OOP, 기능 및 절차 프로그래밍을 포함한 다양한 패러다임을 지원합니다. PHP는 웹 개발에 적합하며 Python은 데이터 분석 및 기계 학습과 같은 다양한 응용 프로그램에 적합합니다.

PHP는 웹 개발 및 빠른 프로토 타이핑에 적합하며 Python은 데이터 과학 및 기계 학습에 적합합니다. 1.PHP는 간단한 구문과 함께 동적 웹 개발에 사용되며 빠른 개발에 적합합니다. 2. Python은 간결한 구문을 가지고 있으며 여러 분야에 적합하며 강력한 라이브러리 생태계가 있습니다.

웹 응용 프로그램에서 MySQL의 주요 역할은 데이터를 저장하고 관리하는 것입니다. 1. MySQL은 사용자 정보, 제품 카탈로그, 트랜잭션 레코드 및 기타 데이터를 효율적으로 처리합니다. 2. SQL 쿼리를 통해 개발자는 데이터베이스에서 정보를 추출하여 동적 컨텐츠를 생성 할 수 있습니다. 3.mysql은 클라이언트-서버 모델을 기반으로 작동하여 허용 가능한 쿼리 속도를 보장합니다.

PHP는 1994 년에 시작되었으며 Rasmuslerdorf에 의해 개발되었습니다. 원래 웹 사이트 방문자를 추적하는 데 사용되었으며 점차 서버 측 스크립팅 언어로 진화했으며 웹 개발에 널리 사용되었습니다. Python은 1980 년대 후반 Guidovan Rossum에 의해 개발되었으며 1991 년에 처음 출시되었습니다. 코드 가독성과 단순성을 강조하며 과학 컴퓨팅, 데이터 분석 및 기타 분야에 적합합니다.

Laravel은 웹 응용 프로그램을 쉽게 구축하기위한 PHP 프레임 워크입니다. 설치 : Composer를 사용하여 전 세계적으로 Laravel CLI를 설치하고 프로젝트 디렉토리에서 응용 프로그램을 작성하는 등 다양한 기능을 제공합니다. 라우팅 : Routes/Web.php에서 URL과 핸들러 간의 관계를 정의하십시오. 보기 : 리소스/뷰에서보기를 작성하여 응용 프로그램의 인터페이스를 렌더링합니다. 데이터베이스 통합 : MySQL과 같은 데이터베이스와 상자 외 통합을 제공하고 마이그레이션을 사용하여 테이블을 작성하고 수정합니다. 모델 및 컨트롤러 : 모델은 데이터베이스 엔티티를 나타내고 컨트롤러는 HTTP 요청을 처리합니다.

메모장에서 Python 코드를 실행하려면 Python 실행 파일 및 NPPEXEC 플러그인을 설치해야합니다. Python을 설치하고 경로를 추가 한 후 nppexec 플러그인의 명령 "Python"및 매개 변수 "{current_directory} {file_name}"을 구성하여 Notepad의 단축키 "F6"을 통해 Python 코드를 실행하십시오.

작은 응용 프로그램을 개발할 때 까다로운 문제가 발생했습니다. 가벼운 데이터베이스 운영 라이브러리를 신속하게 통합해야합니다. 여러 라이브러리를 시도한 후에는 기능이 너무 많거나 호환되지 않는다는 것을 알았습니다. 결국, 나는 내 문제를 완벽하게 해결하는 YII2를 기반으로 단순화 된 버전 인 Minii/DB를 발견했습니다.

Golang은 높은 동시성 작업에 더 적합하지만 Python은 유연성에 더 많은 장점이 있습니다. 1. Golang은 Goroutine 및 채널을 통해 동시성을 효율적으로 처리합니다. 2. Python은 GIL의 영향을받는 스레딩 및 Asyncio에 의존하지만 여러 동시성 방법을 제공합니다. 선택은 특정 요구 사항을 기반으로해야합니다.
