Python代码在函数外部工作,但在函数中不起作用

时间:2017-11-23 02:09:26

标签: python database ms-access odbc pypyodbc

我是Python的新手。只编了一个月。我很难过。下面的代码完美无缺,直到我将它移动到一个函数。我不在工作,所以我不记得确切的错误,但它是没有临时注册表访问的东西。由于代码正常工作,确切的错误并不重要。我无法弄清楚的是为什么我不能从函数中调用此代码。我可以使用'from filename.py import *'导入此代码并且它可以正常工作。

有经验的Python编码器可以解释为什么访问连接在函数调用中不起作用吗?

import pypyodbc

gage_list = []
gage=0
ser_num=1
owner=2
duedate=3
status=4

#create connection
DBfile = "C:/ProgramData/CyberMetrics Corporation/GAGEtrak 7.0/AppFiles/Gtw70.accdb"
conn = pypyodbc.connect('DRIVER={Microsoft Access Driver (*.mdb, *.accdb)};DBQ='+DBfile)
cursor = conn.cursor()
cursor.execute("SELECT Gage_ID FROM Gage_Master")
Gage_ID=cursor.fetchall()

cursor.execute("SELECT Gage_SN FROM Gage_Master")
Gage_SN=cursor.fetchall()

cursor.execute("SELECT GM_Owner FROM Gage_Master")
GM_Owner=cursor.fetchall()

cursor.execute("SELECT Next_Due_Date FROM Gage_Master")
Next_Due_Date=cursor.fetchall()

cursor.execute("SELECT Status FROM Gage_Master")
Status=cursor.fetchall()

conn.close()
counter = 0


for i in range(len(Gage_ID)): #combines gage columns into an array
    tup = Gage_ID[i][0], Gage_SN[i][0], GM_Owner[i][0], Next_Due_Date[i][0], Status[i][0]
    gage_list.append(tup)

print(gage_list[14][duedate]) #to choose a field, select from gage, ser_num, owner, duedate, or status variables

0 个答案:

没有答案