额外的 none 值从何而来?



我正在尝试编写一个小脚本,该脚本将数据从sql服务器数据库迁移到postgresql数据库。

我使用 pyodbc 连接到 sql 服务器,到目前为止做了一些测试查询。 现在为了更好的结构,我决定为每个数据库类型创建一个类,例如PGManger和MSSQLManager。

从它各自的类调用相同的查询而不是直接执行它会产生一个值为"none"的额外行,我无法弄清楚这是从哪里来的。

该类的代码如下所示:

import pyodbc
class MSSQLManger:
def __init__(self, connString):
self.conn = pyodbc.connect(connString)
self.cursor = self.conn.cursor()
def getTableNames(self):
cursor = self.cursor.execute("SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME LIKE 'a%' 
AND TABLE_TYPE = 'BASE TABLE';")
rows = cursor.fetchall()
for row in rows:
print(row)

"主"脚本中的代码:

from mssql import MSSQLManger
msql = MSSQLManger(conn_string)
print(msql.getTableNames())

结果是 :

('tab_name1', )
('tab_name2', )
...
('tab_nameX', )
None

现在,如果摆脱整个阶级的东西,"无"就消失了,问题主义者,它从哪里开始?

只是不要打印它:

msql.getTableNames()

相关内容

  • 没有找到相关文章

最新更新