Python For MySQL 使用连接器连接 ( 一)

connect()构造函数创建一个并返回一个连接到MySQL服务器 MySQLConnection对象。
下面的例子显示了如何连接到MySQL服务器:

import mysql.connector

cnx = mysql.connector.connect(user='scott', password='tiger',
                              host='127.0.0.1',
                              database='employees')
cnx.close()

还可以创建连接对象使用connection.MySQLConnection()类:

from mysql.connector import (connection)

cnx = connection.MySQLConnection(user='scott', password='tiger',
                                 host='127.0.0.1',
                                 database='employees')
cnx.close()

这两种方法,使用 connect()直接构造函数或类,是有效的和功能相同,但使用 connector()优先使用在本手册在大多数例子。
处理连接错误,使用 try声明和捕捉所有的错误使用errors.Error例外:

import mysql.connector
from mysql.connector import errorcode

try:
  cnx = mysql.connector.connect(user='scott',
                                database='testt')
except mysql.connector.Error as err:
  if err.errno == errorcode.ER_ACCESS_DENIED_ERROR:
    print("Something is wrong with your user name or password")
  elif err.errno == errorcode.ER_BAD_DB_ERROR:
    print("Database does not exist")
  else:
    print(err)
else:
  cnx.close()

如果你有大量的连接参数,最好让他们在字典和使用 **接线员:

import mysql.connector

config = {
  'user': 'scott',
  'password': 'tiger',
  'host': '127.0.0.1',
  'database': 'employees',
  'raise_on_warnings': True,
}

cnx = mysql.connector.connect(**config)

cnx.close()

使用连接器/ Python C扩展
连接器/ Python 2.1.1, use_pure连接参数决定是否使用纯Python接口连接到MySQL,C或C扩展使用MySQL客户端库(见第八章,连接器/ Python C扩展)。默认值是True(使用纯Python实现)。设置 use_pure来 False导致连接使用C扩展如果连接器/ Python安装包括它。下面的例子是类似于其他先前的includion但显示use_pure=False.
连接的命名参数 connect()电话:

import mysql.connector

cnx = mysql.connector.connect(user='scott', password='tiger',
                              host='127.0.0.1',
                              database='employees',
                              use_pure=False)
cnx.close()

连接使用一个论点词典:

import mysql.connector

config = {
  'user': 'scott',
  'password': 'tiger',
  'host': '127.0.0.1',
  'database': 'employees',
  'raise_on_warnings': True,
  'use_pure': False,
}

cnx = mysql.connector.connect(**config)

cnx.close()

还可以直接使用C扩展,通过导入 _mysql_connector模块而不是 mysql.connector模块。

你可能感兴趣的:(python)