连接对象
- class pymysql.connections.Connection(*, user=None, password='', host=None, database=None, unix_socket=None, port=0, charset='', collation=None, sql_mode=None, read_default_file=None, conv=None, use_unicode=True, client_flag=0, cursorclass=<class 'pymysql.cursors.Cursor'>, init_command=None, connect_timeout=10, read_default_group=None, autocommit=False, local_infile=False, max_allowed_packet=16777216, defer_connect=False, auth_plugin_map=None, read_timeout=None, write_timeout=None, bind_address=None, binary_prefix=False, program_name=None, server_public_key=None, ssl=None, ssl_ca=None, ssl_cert=None, ssl_disabled=None, ssl_key=None, ssl_key_password=None, ssl_verify_cert=None, ssl_verify_identity=None, compress=None, named_pipe=None, passwd=None, db=None)
表示与 MySQL 服务器的套接字连接。
获取此类实例的正确方法是调用 connect()。
建立与 MySQL 数据库的连接。接受多个参数
- 参数:
host – 数据库服务器所在的地址。
user – 用于登录的用户名。
password – 用于登录的密码。
database – 要使用的数据库,None 表示不使用特定数据库。
port – 要使用的 MySQL 端口,默认为 3306 通常可以。
bind_address – 当客户端具有多个网络接口时,指定要从中连接到主机的接口。参数可以是主机名或 IP 地址。
unix_socket – 使用 Unix 套接字而不是 TCP/IP。
read_timeout – 从连接读取数据的超时时间(以秒为单位)。(默认为 None - 无超时)
write_timeout – 向连接写入数据的超时时间(以秒为单位)。(默认为 None - 无超时)
charset (str) – 要使用的字符集。
collation (str) – 要使用的排序规则名称。
sql_mode – 要使用的默认 SQL_MODE。
read_default_file – 指定要从中读取这些参数的 my.cnf 文件(在 [client] 部分下)。
conv – 要使用的转换字典,而不是默认字典。这用于提供类型的自定义编组和解组。请参阅转换器。
use_unicode – 是否默认使用 Unicode 字符串。此选项默认为 True。
client_flag – 发送到 MySQL 的自定义标志。在 constants.CLIENT 中查找潜在的值。
cursorclass – 要使用的自定义游标类。
init_command – 建立连接时要运行的初始 SQL 语句。
connect_timeout – 连接到数据库的超时时间(以秒为单位)。(默认为 10,最小值:1,最大值:31536000)
ssl – 与 mysql_ssl_set() 的参数类似的参数字典或 ssl.SSLContext。
ssl_ca – 包含 PEM 格式 CA 证书的文件的路径。
ssl_cert – 包含 PEM 格式客户端证书的文件的路径。
ssl_disabled – 禁用 TLS 使用的布尔值。
ssl_key – 包含 PEM 格式客户端证书私钥的文件的路径。
ssl_key_password – 客户端证书私钥的密码。
ssl_verify_cert – 设置为 True 以检查服务器证书的有效性。
ssl_verify_identity – 设置为 True 以检查服务器的身份。
read_default_group – 要在配置文件中读取的组。
autocommit – 自动提交模式。None 表示使用服务器默认值。(默认为 False)
local_infile – 布尔值,用于启用 LOAD DATA LOCAL 命令的使用。(默认为 False)
max_allowed_packet – 发送到服务器的数据包的最大大小(以字节为单位)。(默认为 16MB)仅用于将“LOAD LOCAL INFILE”数据包的大小限制在默认值(16KB)以下。
defer_connect – 在构造时不要显式连接 - 等待 connect 调用。(默认为 False)
auth_plugin_map – 插件名称到处理该插件的类的字典。该类将把 Connection 对象作为构造函数的参数。该类需要一个 authenticate 方法,该方法接受身份验证数据包作为参数。对于对话框插件,可以使用 prompt(echo, prompt) 方法(如果不存在 authenticate 方法)从用户返回字符串。(实验性)
server_public_key – SHA256 身份验证插件公钥值。(默认为 None)
binary_prefix – 在 bytes 和 bytearray 上添加 _binary 前缀。(默认为 False)
compress – 不支持。
named_pipe – 不支持。
db – **已弃用** database 的别名。
passwd – **已弃用** password 的别名。
请参阅规范中的连接。
- begin()
开始事务。
- close()
发送退出消息并关闭套接字。
请参阅规范中的Connection.close()。
- 引发:
Error – 如果连接已关闭。
- commit()
将更改提交到稳定存储。
请参阅规范中的Connection.commit()。
- cursor(cursor=None)
创建一个新的游标来执行查询。
- 参数:
cursor (
Cursor
,SSCursor
,DictCursor
, 或SSDictCursor
.) – 要创建的游标类型。None 表示使用 Cursor。
- property open
如果连接已打开,则返回 True。
- ping(reconnect=True)
检查服务器是否处于活动状态。
- 参数:
reconnect (boolean) – 如果连接已关闭,则重新连接。
- 引发:
Error – 如果连接已关闭且 reconnect=False。
- rollback()
回滚当前事务。
请参阅规范中的Connection.rollback()。
- select_db(db)
设置当前数据库。
- 参数:
db – 数据库的名称。
- set_character_set(charset, collation=None)
设置字符集(和排序规则)
发送“SET NAMES charset [COLLATE collation]”查询。根据 charset 更新 Connection.encoding。
- set_charset(charset)
已弃用。请改用 set_character_set()。
- show_warnings()
发送“SHOW WARNINGS” SQL 命令。