在使用fetchall()过滤mySQL数据之前,通过DataNitro将行传递到Excel中

我试图简化这个,所以它会拉动任何数据,并没有任何冲突布局,但我发现错误,如果我有一个冒号的date结构,如果我的一些产品有反斜杠或像字符代码的使用。 任何方式剥离或包含这些string,如果存在? 这里是我使用MySQLdb的简单过程…

c = db.cursor() exstring = "SELECT id,model,upc,date,cost FROM products" CellRange("A5:I600").clear() # cleanup existing data c.execute(exstring) sh = c.fetchall() for i, pos in enumerate(sh): Cell(5+i, 1).horizontal = pos #starts 5th row 

这些types的date(date时间)的很多错误…

 2013-06-01 05:15:02 

获取27 / basic_io.py错误的列表,以及未定义全局名称“logging”。

 File "27/basic_io.py", line 352, in __setattr__ File "27/basic_io.py", line 238, in _set_horizontal File "27/basic_io.py", line 607, in __setattr__ File "27/basic_io.py", line 352, in __setattr__ File "27/basic_io.py", line 167, in _set_value Namerror: global name 'logging' is not defined 

但是,如果我select基本数据,这一切都很好。 我想到一个SELECT *的点,它将撤回任何表结构没有任何问题。 如果不可行,那么过滤单个列的方法。

DataNitro在最新版本中增加了对date时间types的支持( https://datanitro.com/pro/auth/login )。 试试看,看看它是否解决了这个问题 – 你应该能够运行原始脚本,而不使用date格式。

来源:我是DataNitro开发人员之一。

我不确定27/basic_io.py文件是什么,但听起来像是它不能处理来自Python的datetime模块的对象。

尝试SELECT date列作为string,而不是…

 exstring = 'SELECT id,model,upc,DATE_FORMAT(date, "%Y-%m-%d"),cost FROM products' 

您可以通过在DATE_FORMAT()使用不同的格式说明符来改变返回的格式。