将Maya 2011与Mysqldb连接起来

时间:2011-10-13 17:47:27

标签: python mysql maya

我在Windows 7(64位)计算机上使用Maya 2011(64位)和MySQL 5.5(64位)。我试图通过python将maya与Mysqldb连接起来。所以我将连接器文件复制到maya \ python \ lib \ site包中。

我能够导入MYsqldb模块而没有任何错误。但是当我尝试调用光标对象(用于查询)时,我发现Maya无法识别光标对象。

以下是我的示例代码:

import MySQLdb as mb
import maya.cmds as cmds

def mysql_connect(hostname, username, password, dbname):
    db = mb.connect(host=hostname,user=username,passwd=password,db=dbname)

db = mysql_connect("localhost", “root”, “test”, “mydbt")
dbcursor = db.cursor()
dbcursor.execute("select * from maya")

<小时/> 但代码抛出以下错误:

  

错误:AttributeError:'NoneType'对象没有属性'cursor'#

我尝试验证env-path变量,替换连接器文件,但问题仍然存在。

由于是初学者,我无法确定确切的问题 我要求您提出宝贵的建议

2 个答案:

答案 0 :(得分:1)

您没有从mysql_connect函数返回任何内容。所以它返回None。当你这样做时:

db = mysql_connect("localhost", “root”, “test”, “mydbt")

db变为None。尝试更改:

db = mb.connect(host=hostname,user=username,passwd=password,db=dbname)

return mb.connect(host=hostname,user=username,passwd=password,db=dbname)

话虽如此,我不确定定义一个函数来使单个事物有用。最好有这样的东西:

import MySQLdb as mb
import maya.cmds as cmds

db = mb.connect(host="localhost",user=“root”,passwd=“test”,db=“mydbt")

dbcursor = db.cursor()
dbcursor.execute("select * from maya")

答案 1 :(得分:0)

在这里,您有两件事分配给dbmysql_connect("localhost", “root”, “test”, “mydbt")似乎正在返回None,因此当您稍后致电db.cursor()时,您会收到该错误。

确保正确覆盖db变量(在这种情况下,看起来你不是)。