楼主: desxy
115 1

[其他] 求助:python3 中使用pypyodbc.py读写ACCESS数据库遇到问题: [推广有奖]

  • 0关注
  • 0粉丝

高中生

62%

还不是VIP/贵宾

-

威望
0
论坛币
276 个
学术水平
3 点
热心指数
3 点
信用等级
3 点
经验
498 点
帖子
16
精华
0
在线时间
24 小时
注册时间
2016-3-19
最后登录
2018-11-13

desxy 发表于 2018-11-7 12:28:45 |显示全部楼层
5论坛币
求助:最近在学习python3 中使用pypyodbc.py读写ACCESS数据库遇到几个问题,请高手不吝赐教:

程序代码如下:
import pypyodbc
stock_info=[('300674', '2018-11-07'), ('600604', '1992-03-27'), ('600462', '2003-09-03')]

try:
    conn=pypyodbc.win_connect_mdb('c:\\users\\administrator\\desktop\\t1.mdb')
except Exception  as e :
    #print(e)
    pypyodbc.win_create_mdb('c:\\users\\administrator\\desktop\\t1.mdb')
    conn = pypyodbc.win_connect_mdb('c:\\users\\administrator\\desktop\\t1.mdb')
cur=conn.cursor()

try:
    cur.execute("CREATE TABLE code_list(code varchar(6),begaindate varchar(8))")
except Exception as e:
    print('get the error info if the table has been not created:',e)

try:
    record=cur.execute("SELECT * FROM code_list")
except Exception as e:
    print("check that the table has been created:",e)
print("the table has been created")

try:
    cur.executemany("INSERT INTO code_list(code,begaindate) VALUES(%s,%s)",stock_info)
except Exception as e:
    print('the error when insert into is:',e)

cur.commit()
cur.close()
conn.close()

运行显示如下:
D:\MyPython\venv\Scripts\python.exe D:/MyPython/p02.py
the table has been created
the error when insert into is: ('42000', "[42000] [Microsoft][ODBC Microsoft Access Driver] 语法错误 在查询表达式 '%s' 中。")

Process finished with exit code 0

问题如下:
第一:程序中创建表格code_list然后读取表格均未报错误和异常,但打开数据库后却没有这个表格(刷新或重新打开数据库也没有)
第二:运行显示中提示executemany方法中的SQL语法错误在哪里

请高手帮忙指点迷津。特别感谢。

关键词:access python Acces cces ESS
stata SPSS
desxy 发表于 2018-11-7 12:33:44 |显示全部楼层
问题补充:第一个问题已经解决,原因未知,稍晚一点打开数据库后发现表格出现了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 我要注册

GMT+8, 2018-11-15 16:55