我正在使用该hdbcli
软件包从SAP HANA加载数据。
问题:加载数据时,我仅获得值行,而没有SQL表的实际标题。
当我仅加载3列(如下所示)时,即使它很丑陋,我也可以自己手动添加它们。当我执行一条Select *
语句时,这变得不可能,因为我真的不想手动添加它们,并且可能不知道何时进行更改。
问题:是否有标记/命令从表中获取列标题?
代码MRE:
#Initialize your connection
conn = dbapi.connect(
address='00.0.000.00',
port='39015',
user='User',
password='Password',
encrypt=True,
sslValidateCertificate=False
)
cursor = conn.cursor()
sql_command = "select TITLE, FIRSTNAME, NAME from HOTEL.CUSTOMER;"
cursor.execute(sql_command)
rows = cursor.fetchall() # returns only data, not the column values
for row in rows:
for col in row:
print ("%s" % col, end=" ")
print (" ")
cursor.close()
conn.close()
感谢@astentx的评论,我找到了一个解决方案:
cursor = conn.cursor()
sql_command = "select TITLE, FIRSTNAME, NAME from HOTEL.CUSTOMER;"
cursor.execute(sql_command)
rows = cursor.fetchall() # returns only data, not the column headers
column_headers = [i[0] for i in cursor.description] # get column headers
cursor.close()
conn.close()
result = [[column_header]] # insert header
for row in rows: # insert rows
current_row = []
for cell in row:
current_row.append(cell)
result.append(current_row)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句