使用pymssql从查询结果中获取列名

MK.*_*MK. 7 python database pymssql

有没有办法从pymssql结果中获取列名?如果我指定as_dict = True,我会返回一个包含所有列标题的字典,但由于它是字典,因此不会对它们进行排序.

Joh*_*ess 15

pymssql声称支持Python DB-API,因此您应该能够.description从游标对象获取该属性.

.描述

       This read-only attribute is a sequence of 7-item
       sequences.  

       Each of these sequences contains information describing
       one result column: 

         (name, 
          type_code, 
          display_size,
          internal_size, 
          precision, 
          scale, 
          null_ok)
Run Code Online (Sandbox Code Playgroud)

因此,每个"内部"序列中的第一项是每列的名称.


小智 7

您可以使用游标描述属性上的列表理解来创建有序列名称的列表:

column_names = [item[0] for item in cursor.description]
Run Code Online (Sandbox Code Playgroud)