通过python将空白单元格保留为空,而不是“无”

时间:2013-07-04 18:09:21

标签: python sql database date

我有这样的访问表(日期格式为mm / dd / yyyy)

col_1_id ----- COL_2

1 1/1/2003

2

3 1/5/2009

4

5 3/2/2008

输出应该是Co_1在2到4之间的表格(空白单元格必须为空白)

2

3 1/5/2009

4

我尝试过使用sql查询。输出在空白单元格中打印“无”。我需要空白单元格中的空白。 另一件事是当我试图在另一个表中插入此值时,它只插入 具有日期值的行。代码在没有日期的任何行时停止。我需要按原样插入行。

我在

中尝试使用python
import pyodbc
DBfile = Data.mdb
conn = pyodbc.connect ('Driver = {Microsoft Access Driver (*.mdb)}; DBQ =' +DBfile
cursor = conn.cursor()

sql_table = "CREATE TABLE Table_new (Col_1 integer, Col_2 Date)"
cursor.execute.sql_table()
conn.commit()

i = 0
while i => 2 and i <= 4:
    sql = "INSERT INTO New_Table (Col_1, Col_2)VALUES ('%s', '%s')" % (A[i][0], A[i][1])
    cursor.execute(sql)
    conn.commit()
i = i + 1
cursor.close
conn.close

`

2 个答案:

答案 0 :(得分:3)

为什么不简单地添加 OR 逻辑来消除A[i][x]的可能性,而不是使用None来决定你的价值。

对于您希望保留为“空白”的任何单元格(假设您的意思是空字符串),让我们说A[i][1],只需执行

A[i][1] or ""

如果单元格为您提供"",则会生成空字符串None

答案 1 :(得分:0)

None的字符串表示实际上是'None',而不是空字符串。尝试:

"... ('%s', '%s')" % (A[i][0], A[i][1] if A[i][1] else '')