Skip to main content

MySQLdb包

MySQLdb 软件包

MySQLdb - 与MySQL的DB API v2.0兼容接口。

这个包是_mysql的一个包装,主要实现MySQL C API。

connect() - 连接到服务器

有关其他项目的更多信息,请参阅C API规范和MySQL文档。

有关MySQLdb如何处理类型转换的信息,请参阅MySQLdb.converters模块。

MySQLdb.__init__.Binary(x)
MySQLdb.__init__.Connect(*args, **kwargs)

连接的工厂函数。

MySQLdb.__init__.Connection(*args, **kwargs)

连接的工厂函数。

MySQLdb.__init__.Date

date 的别名

MySQLdb.__init__.Time

time 的别名

MySQLdb.__init__.Timestamp

datetime 的别名

MySQLdb.__init__.DateFromTicks(ticks)

将UNIX ticks转换为日期实例。

MySQLdb.__init__.TimeFromTicks(ticks)

将UNIX ticks转换为时间实例。

MySQLdb.__init__.TimestampFromTicks(ticks)

将UNIX ticks转换为datetime实例。

exception MySQLdb.__init__.DataError

基类:_mysql_exceptions.DatabaseError

由于处理的数据问题(例如除以零,数值超出范围等)导致的错误引发异常。

exception MySQLdb.__init__.DatabaseError

基类:_mysql_exceptions.Error

对与数据库相关的错误引发异常。

exception MySQLdb.__init__.Error

基类:_mysql_exceptions.MySQLError

异常是所有其他错误异常的基类(不是警告)。

exception MySQLdb.__init__.IntegrityError

基类:_mysql_exceptions.DatabaseError

当数据库的关系完整性受到影响时引发异常,例如,外键检查失败,重复键等。

exception MySQLdb.__init__.InterfaceError

基类:_mysql_exceptions.Error

对与数据库接口而不是数据库本身相关的错误引发异常。

exception MySQLdb.__init__.InternalError

基类:_mysql_exceptions.DatabaseError

当数据库遇到内部错误时抛出异常,例如游标不再有效,事务不同步等。

exception MySQLdb.__init__.MySQLError

基类:exceptions.StandardError

与MySQL操作相关的异常。

exception MySQLdb.__init__.NotSupportedError

基类:_mysql_exceptions.DatabaseError

在使用数据库不支持的方法或数据库API的情况下引发的异常,例如。在不支持事务或已关闭事务的连接上请求.rollback()。

class MySQLdb.__init__.DBAPISet

基类:frozenset

如果A是DBAPISet并且x是该集合的成员,则A == x为真的特殊类型的集合。

exception MySQLdb.__init__.OperationalError

基类:_mysql_exceptions.DatabaseError

对于与数据库的操作相关并且不一定在程序员的控制下的错误,引发异常。发生意外断开连接,未找到数据源名称,无法处理事务,处理过程中发生内存分配错误等。

exception MySQLdb.__init__.ProgrammingError

基类:_mysql_exceptions.DatabaseError

编程错误引发的异常,例如表未找到或已存在,SQL语句中的语法错误,指定的参数数量错误等。

exception MySQLdb.__init__.Warning

基类:exceptions.Warning_mysql_exceptions.MySQLError

对重要警告(例如插入时的数据截断等)引发异常。

MySQLdb.__init__.connect(*args, **kwargs)

连接的工厂函数。

MySQLdb.__init__.debug()

具有给定字符串的DBUG_PUSH。 mysql_debug()使用Fred Fish调试库。要使用此功能,必须编译客户端库以支持调试。

MySQLdb.__init__.escape()

escape(obj,dict) - 使用映射dict为对象obj转义任何特殊字符,为每种类型提供引用函数。返回SQL文字字符串。

MySQLdb.__init__.escape_dict()

escape_sequence(d,dict) - 使用映射dict为字典d中的任何特殊字符转义,为每种类型提供引用函数。返回转义项的字典。

MySQLdb.__init__.escape_sequence()

escape_sequence(seq,dict) - 使用映射dict为序列seq中的任何特殊字符转义,以提供每种类型的引用函数。返回转义项的元组。

MySQLdb.__init__.escape_string()

escape_string(s) - 在字符串s中引用任何SQL解释的字符。

使用connection.escape_string(s),如果你使用它。 _mysql.escape_string(s)不能处理字符集。你可能更好地使用connection.escape(o),因为它会逃离整个序列以及字符串。

MySQLdb.__init__.get_client_info()

get_client_info() - 返回表示客户端库版本的字符串。

MySQLdb.__init__.string_literal()

string_literal(obj) - 将对象obj转换为SQL字符串文字。这意味着,任何特殊的SQL字符都被转义,并且被单引号括起来。换句话说,它执行:

“’%s’”%escape_string(str(obj))

使用connection.string_literal(obj),如果你使用它。 _mysql.string_literal(obj)不能处理字符集。

connections 模块

此模块实现MySQLdb的连接。目前只有一个类:Connection。其他不太可能。但是,您可能想要创建自己的子类。在大多数情况下,您可能会使用非标准Cursor类重写Connection.default_cursor。

class MySQLdb.connections.Connection(*args, **kwargs)

基类:_mysql.connection

MySQL数据库连接对象

exception DataError

基类:_mysql_exceptions.DatabaseError

由于处理的数据问题(例如除以零,数值超出范围等)导致的错误引发异常。

exception Connection.DatabaseError

基类:_mysql_exceptions.Error

对与数据库相关的错误引发异常。

exception Connection.Error

基类:_mysql_exceptions.MySQLError

异常是所有其他错误异常的基类(不是警告)。

exception Connection.IntegrityError

基类:_mysql_exceptions.DatabaseError

当数据库的关系完整性受到影响时引发异常,例如,外键检查失败,重复键等。

exception Connection.InterfaceError

基类:_mysql_exceptions.Error

对与数据库接口而不是数据库本身相关的错误引发异常。

exception Connection.InternalError

基类:_mysql_exceptions.DatabaseError

当数据库遇到内部错误时抛出异常,例如游标不再有效,事务不同步等。

exception Connection.NotSupportedError

基类:_mysql_exceptions.DatabaseError

在使用数据库不支持的方法或数据库API的情况下引发的异常,例如。在不支持事务或已关闭事务的连接上请求.rollback()。

exception Connection.OperationalError

基类:_mysql_exceptions.DatabaseError

对于与数据库的操作相关并且不一定在程序员的控制下的错误,引发异常。发生意外断开连接,未找到数据源名称,无法处理事务,处理过程中发生内存分配错误等。

exception Connection.ProgrammingError

基类:_mysql_exceptions.DatabaseError

编程错误引发的异常,例如表未找到或已存在,SQL语句中的语法错误,指定的参数数量错误等。

exception Connection.Warning

基类:exceptions.Warning_mysql_exceptions.MySQLError

对重要警告(例如插入时的数据截断等)引发异常。

Connection.autocommit(on)
Connection.begin()

显式地开始连接。非标准。 DEPRECATED:将在1.3中删除。请改用SQL BEGIN语句。

Connection.cursor(cursorclass=None)

创建可以执行查询的游标。可选的cursorclass参数用于创建光标。默认情况下,使用self.cursorclass = cursors.Cursor。

Connection.default_cursor

Cursor 的别名

Connection.errorhandler(connection, cursor, errorclass, errorvalue)

如果cursor不是None,(errorclass,errorvalue)被追加到cursor.messages;否则将其附加到connection.messages。然后,errorclass以errorvalue作为值引发。

您可以通过将其分配给实例用您自己的错误处理程序覆盖此。

Connection.literal(o)

如果o是单个对象,则返回一个SQL字符串作为字符串。如果o是非字符串序列,则序列的项将被转换并作为序列返回。

非标准。内部使用;不要在您的应用程序中使用此。

Connection.set_character_set(charset)

将连接字符集设置为charset。字符集只能在MySQL-4.1及更高版本中更改。如果尝试在旧版本中从当前值更改字符集,则会抛出NotSupportedError。

Connection.set_sql_mode(sql_mode)

设置连接sql_mode。有关法律价值,请参阅MySQL文档。

Connection.show_warnings()

将有关警告的详细信息作为(级别,代码,消息)的元组序列返回。这仅在MySQL-4.1及更高版本中受支持。如果您的服务器是较早版本,则返回空序列。

converters 模块

MySQLdb类型转换模块

此模块处理MySQL的所有类型转换。如果默认类型转换不是你需要的,你可以自己做。字典转换将某种类型映射到转换函数,该函数返回相应的值:

键:FIELD_TYPE.* (来自MySQLdb.constants)

转换功能:

参数:string

返回:Python对象

Key:Python类型对象(来自类型)或类

转换功能:

参数:指示类型或类AND的Python对象

转换字典

返回:SQL文字值

注意:大多数转换函数可以忽略字典,但是

它是必需的参数。它有必要转换类似序列和实例。

如果您可以避免转换,请勿修改。而是,复制(使用copy()方法),修改副本,然后将它们传递给MySQL.connect()。

MySQLdb.converters.Bool2Str(s, d)
MySQLdb.converters.Float2Str(o, d)
MySQLdb.converters.Instance2Str(o, d)

将实例转换为字符串表示形式。如果__str __()方法产生可接受的输出,那么您不需要将类添加到转换;它将由默认转换器处理。如果在d中没有找到确切的类,它将使用它可以找到的第一个类,其中o是一个实例。

MySQLdb.converters.Long2Int(s, d)

通过str()将某些东西转换为字符串。

MySQLdb.converters.None2NULL(o, d)

将None转换为NULL。

MySQLdb.converters.Set2Str(s, d)
MySQLdb.converters.Str2Set(s)
MySQLdb.converters.Thing2Literal(o, d)

将某些东西转换为SQL字符串文字。如果使用MySQL-3.23或更高版本,string_literal()是_mysql.MYSQL对象的一个方法,并且在创建连接时,该函数将覆盖此函数。

MySQLdb.converters.Thing2Str(s, d)

通过str()将某些东西转换为字符串。

MySQLdb.converters.Unicode2Str(s, d)

使用默认编码将unicode对象转换为字符串。这只用作真实函数的占位符,这是依赖于连接的。

MySQLdb.converters.array2Str(o, d)
MySQLdb.converters.char_array(s)
MySQLdb.converters.quote_tuple(t, d)

cursors 模块

MySQLdb游标

此模块实现MySQLdb的各种类型的游标。默认情况下,MySQLdb使用Cursor类。

class MySQLdb.cursors.Cursor(connection)

基类:MySQLdb.cursors.CursorStoreResultMixInMySQLdb.cursors.CursorTupleRowsMixInMySQLdb.cursors.BaseCursor

这是标准的Cursor类,它返回行为元组,并将结果集存储在客户端中。

times 模块

次模块

此模块提供了一些处理MySQL数据的日期和时间类。

使用Python datetime模块处理日期和时间列。

MySQLdb.times.DateFromTicks(ticks)

将UNIX ticks转换为日期实例。

MySQLdb.times.DateTime2literal(d, c)

将DateTime对象格式化为ISO时间戳记。

MySQLdb.times.DateTimeDelta2literal(d, c)

将DateTimeDelta对象格式化为时间。

MySQLdb.times.DateTime_or_None(s)
MySQLdb.times.Date_or_None(s)
MySQLdb.times.TimeDelta_or_None(s)
MySQLdb.times.TimeFromTicks(ticks)

将UNIX ticks转换为时间实例。

MySQLdb.times.Time_or_None(s)
MySQLdb.times.TimestampFromTicks(ticks)

将UNIX ticks转换为datetime实例。

MySQLdb.times.format_TIMEDELTA(v)
MySQLdb.times.format_TIMESTAMP(d)
MySQLdb.times.mysql_timestamp_converter(s)

将MySQL TIMESTAMP转换为Timestamp对象。