Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/PyMySQL/PyMySQL
MySQL client library for Python
https://github.com/PyMySQL/PyMySQL
mysql python
Last synced: 25 days ago
JSON representation
MySQL client library for Python
- Host: GitHub
- URL: https://github.com/PyMySQL/PyMySQL
- Owner: PyMySQL
- License: mit
- Created: 2011-07-27T17:38:47.000Z (almost 13 years ago)
- Default Branch: main
- Last Pushed: 2024-03-26T07:02:42.000Z (about 2 months ago)
- Last Synced: 2024-04-25T21:04:01.812Z (27 days ago)
- Topics: mysql, python
- Language: Python
- Homepage: https://pymysql.readthedocs.io/
- Size: 1.35 MB
- Stars: 7,555
- Watchers: 229
- Forks: 1,412
- Open Issues: 15
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Security: SECURITY.md
Lists
- awesome - PyMySQL - Pure Python MySQL Client (Python)
- awesome-python-cn - PyMySQL - python。 (资源列表 / 数据库驱动)
- awesome-mysql - PyMySQL - MySQL database connector for Python. (Connectors)
- Awesome-Python - PyMySQL - A pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- Python-Awesome - PyMySQL - Pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- awesome-python - PyMySQL - Pure Python MySQL Client (Awesome Python / Database Drivers)
- awesome-python - PyMySQL - A pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- python-awesome-case1 - PyMySQL - A pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- awesome-python - PyMySQL - A pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- awesome-python - PyMySQL - A pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- fintech-awesome-libraries - PyMySQL - A pure Python MySQL driver compatible to mysql-python. (Database Drivers / Automatic Plotting)
- fucking-awesome-python - :octocat: PyMySQL - :star: 7328 :fork_and_knife: 1409 - A pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- awesome-python-master - PyMySQL - A pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- awesome-stars - PyMySQL/PyMySQL - MySQL client library for Python (Python)
- awesome-python - PyMySQL - Pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- awesome-python - PyMySQL - Pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- awesome_python - PyMySQL - A pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- awesome-stars - PyMySQL/PyMySQL - MySQL client library for Python (Python)
- awesome-python - PyMySQL - Pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- awesome-python-cn - PyMySQL - python。 (资源列表 / 数据库驱动)
- awesome-python - PyMySQL - A pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- awesome-python-webapps - PyMySQL
- awesome-github-star - PyMySQL
- join-awesome-python-interview-topics - PyMySQL - A pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- awesome-python - PyMySQL - Pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- awesome-python - PyMySQL - A pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- awesome-python-cn - 官网
- awesome-python-clone - PyMySQL - A pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- awesome-stars - PyMySQL/PyMySQL - MySQL client library for Python (Python)
- awesome-python4 - PyMySQL - Pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- awesome-python - PyMySQL - Pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- awesome-python-resources-all - PyMySQL - A pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- awesome-python-resources - GitHub - 4% open · ⏱️ 24.08.2022): (数据库 Drivers)
- awesome-stars - PyMySQL/PyMySQL - MySQL client library for Python (Python)
- fucking-awesome-python - :octocat: PyMySQL - :star: 6192 :fork_and_knife: 1245 - A pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- awesome-python - PyMySQL - A pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- awesome-python-zh - PyMySQL - 与mysql-python兼容的纯Python MySQL驱动程序。 (数据库驱动程序)
- awesome-python - PyMySQL - A pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- awesome-python - PyMySQL - A pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- awesome-python - PyMySQL - A pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- awesome-python-master - PyMySQL - A pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- awesome-python - PyMySQL - A pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- awesome-python - PyMySQL - A pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- awesome-stars - PyMySQL
- awesome-python - PyMySQL - A pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- awesomePython - PyMySQL - A pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- awesome-python - PyMySQL - Pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- awesome-python-cn - 官网
- awesome-python - PyMySQL - A pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- git-github.com-vinta-awesome-python - PyMySQL - A pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- awesome_python - PyMySQL - Pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- awesome-hacking-lists - PyMySQL - Pure Python MySQL Client (Python (1887))
- python-awesome - PyMySQL - A pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- awesome-python - PyMySQL - A pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- fucking_awesome_python - PyMySQL - Pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- awesome-python - PyMySQL - Pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- Mpaperlee-awesome-python - PyMySQL - Pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- awesome-python - PyMySQL - A pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- best-of-python - GitHub - 2% open · ⏱️ 04.05.2024): (Database Clients)
- awesome-python - PyMySQL - A pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- awesome-python - PyMySQL - A pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- starred-awesome - PyMySQL - Pure Python MySQL Client (Python)
- awesome-python - PyMySQL - A pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- awesome-python - PyMySQL - Pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- awesome-python - PyMySQL - A pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- awesome-python - PyMySQL - A pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- awesome-python - PyMySQL - Pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- awesome-hacking-lists - PyMySQL/PyMySQL - MySQL client library for Python (Python)
- awesome-hacking-lists - PyMySQL - Pure Python MySQL Client (Python)
- awesome-list - PyMySQL - Pure Python MySQL Client. (Data Management & Processing / Database & Cloud Management)
- awesome-stars - PyMySQL/PyMySQL - `★7562` MySQL client library for Python (Python)
- awesome-python - pymysql - A pure Python MySQL driver compatible to mysql-python. (Database Drivers)
- my-awesome-stars - PyMySQL/PyMySQL - Pure Python MySQL Client (Python)
README
[![Documentation Status](https://readthedocs.org/projects/pymysql/badge/?version=latest)](https://pymysql.readthedocs.io/)
[![codecov](https://codecov.io/gh/PyMySQL/PyMySQL/branch/main/graph/badge.svg?token=ppEuaNXBW4)](https://codecov.io/gh/PyMySQL/PyMySQL)# PyMySQL
This package contains a pure-Python MySQL client library, based on [PEP
249](https://www.python.org/dev/peps/pep-0249/).## Requirements
- Python -- one of the following:
- [CPython](https://www.python.org/) : 3.7 and newer
- [PyPy](https://pypy.org/) : Latest 3.x version
- MySQL Server -- one of the following:
- [MySQL](https://www.mysql.com/) \>= 5.7
- [MariaDB](https://mariadb.org/) \>= 10.4## Installation
Package is uploaded on [PyPI](https://pypi.org/project/PyMySQL).
You can install it with pip:
$ python3 -m pip install PyMySQL
To use "sha256_password" or "caching_sha2_password" for authenticate,
you need to install additional dependency:$ python3 -m pip install PyMySQL[rsa]
To use MariaDB's "ed25519" authentication method, you need to install
additional dependency:$ python3 -m pip install PyMySQL[ed25519]
## Documentation
Documentation is available online:
For support, please refer to the
[StackOverflow](https://stackoverflow.com/questions/tagged/pymysql).## Example
The following examples make use of a simple table
``` sql
CREATE TABLE `users` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`email` varchar(255) COLLATE utf8_bin NOT NULL,
`password` varchar(255) COLLATE utf8_bin NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin
AUTO_INCREMENT=1 ;
`````` python
import pymysql.cursors# Connect to the database
connection = pymysql.connect(host='localhost',
user='user',
password='passwd',
database='db',
cursorclass=pymysql.cursors.DictCursor)with connection:
with connection.cursor() as cursor:
# Create a new record
sql = "INSERT INTO `users` (`email`, `password`) VALUES (%s, %s)"
cursor.execute(sql, ('[email protected]', 'very-secret'))# connection is not autocommit by default. So you must commit to save
# your changes.
connection.commit()with connection.cursor() as cursor:
# Read a single record
sql = "SELECT `id`, `password` FROM `users` WHERE `email`=%s"
cursor.execute(sql, ('[email protected]',))
result = cursor.fetchone()
print(result)
```This example will print:
``` python
{'password': 'very-secret', 'id': 1}
```## Resources
- DB-API 2.0:
- MySQL Reference Manuals:
- MySQL client/server protocol:
- "Connector" channel in MySQL Community Slack:
- PyMySQL mailing list:
## License
PyMySQL is released under the MIT License. See LICENSE for more
information.