
这是我使用Python Tkinter编写的程序的屏幕截图.我使用ttk.Entrywidget来获取用户输入.
我想知道如何将输入置于中心Entry(如您所见,输入现在卡在小部件的左侧部分)
我用 python (pyodbc和tkinter)编写了一个程序。我曾经pyodbc连接到 Microsoft Access 数据库。
有连接代码:
import pyodbc
# Microsoft Access Database File
DBfile = 'GDP.mdb'
conn = pyodbc.connect('DRIVER={Microsoft Access Driver (*.mdb)};DBQ='+DBfile)
Run Code Online (Sandbox Code Playgroud)
当我在命令提示符 ( python myprogram.py) 中编译之前启动它时,它运行良好。当编译pyinstaller一切顺利时,不会报告任何错误。
但是当尝试启动可执行文件时,它会显示主窗口 2 秒钟,然后消失。
当我使用该-d标志pyinstaller打开调试模式时,它在启动可执行文件时显示以下错误:
Traceback (most recent call last):
File "<string>", line 62, in <module>
pyodbc.Error: (
'HY000', "[HY000] [Microsoft][Driver ODBC Microsoft Access]
Can't find File'(Unknown)'.
(-1811) (SQLDriverConnect); [HY000] [Microsoft][Driver ODBC Microsoft Access]
Can't find File'(Unknown)'.
(-1811)")
RC: -1 …Run Code Online (Sandbox Code Playgroud) 问题是我无法创建一个名为Date(我想是因为它是类型)的字段。有什么主意该怎么做?
from pyodbc import connect
# database connect
conn = connect('DRIVER={Microsoft Access Driver (*.mdb)};DBQ=test.mdb')
cursor = conn.cursor()
# sql query execute
query = "create table MyTable(name varchar(30), age integer , Date date)"
cursor.execute(query)
# commit changes
conn.commit()
conn.close()
Run Code Online (Sandbox Code Playgroud)
错误:
Traceback (most recent call last):
File "\Path\to\myscript\test.py", line 9, in <module>
cursor.execute(query)
ProgrammingError: ('42000', '[42000] [Microsoft][ODBC Microsoft Access Driver] Syntax error in field definition. (-3553) (SQLExecDirectW)')
Run Code Online (Sandbox Code Playgroud)
环境:Windows 7 64bit,Python 2.7 pyodbc-3.0.6.win-amd64-py2.7