%global _empty_manifest_terminate_build 0
Name: python-pymysql
Version: 1.0.3
Release: 1
Summary: Pure Python MySQL Driver
License: MIT License
URL: https://pypi.org/project/pymysql/
Source0: https://mirrors.nju.edu.cn/pypi/web/packages/7a/6f/b3fadf41239b9ca7ea3857c440c499fd2e9e0f410bb942bd8d593dce4bd6/PyMySQL-1.0.3.tar.gz
BuildArch: noarch
Requires: python3-PyNaCl
Requires: python3-cryptography
%description
[![Documentation Status](https://readthedocs.org/projects/pymysql/badge/?version=latest)](https://pymysql.readthedocs.io/)
[![image](https://coveralls.io/repos/PyMySQL/PyMySQL/badge.svg?branch=main&service=github)](https://coveralls.io/github/PyMySQL/PyMySQL?branch=main)
# 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.3
## 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, ('webmaster@python.org', '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, ('webmaster@python.org',))
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.
%package -n python3-pymysql
Summary: Pure Python MySQL Driver
Provides: python-pymysql
BuildRequires: python3-devel
BuildRequires: python3-setuptools
BuildRequires: python3-pip
%description -n python3-pymysql
[![Documentation Status](https://readthedocs.org/projects/pymysql/badge/?version=latest)](https://pymysql.readthedocs.io/)
[![image](https://coveralls.io/repos/PyMySQL/PyMySQL/badge.svg?branch=main&service=github)](https://coveralls.io/github/PyMySQL/PyMySQL?branch=main)
# 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.3
## 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, ('webmaster@python.org', '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, ('webmaster@python.org',))
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.
%package help
Summary: Development documents and examples for pymysql
Provides: python3-pymysql-doc
%description help
[![Documentation Status](https://readthedocs.org/projects/pymysql/badge/?version=latest)](https://pymysql.readthedocs.io/)
[![image](https://coveralls.io/repos/PyMySQL/PyMySQL/badge.svg?branch=main&service=github)](https://coveralls.io/github/PyMySQL/PyMySQL?branch=main)
# 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.3
## 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, ('webmaster@python.org', '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, ('webmaster@python.org',))
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.
%prep
%autosetup -n pymysql-1.0.3
%build
%py3_build
%install
%py3_install
install -d -m755 %{buildroot}/%{_pkgdocdir}
if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
pushd %{buildroot}
if [ -d usr/lib ]; then
find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/lib64 ]; then
find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/bin ]; then
find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/sbin ]; then
find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
fi
touch doclist.lst
if [ -d usr/share/man ]; then
find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
fi
popd
mv %{buildroot}/filelist.lst .
mv %{buildroot}/doclist.lst .
%files -n python3-pymysql -f filelist.lst
%dir %{python3_sitelib}/*
%files help -f doclist.lst
%{_docdir}/*
%changelog
* Fri Apr 21 2023 Python_Bot - 1.0.3-1
- Package Spec generated