使用python从msssql服务器获取数据

时间:2018-11-05 10:27:28

标签: python

我正在尝试使用python从mssql服务器获取数据,其中一列包含UUID。数据以字典列表的形式获取。并且第一列值,即用于第一键的值具有UUID数据。

data = [{
  'AGENCY_ID': UUID('cbaf8fb4-7ada-4f4c-9726-fea39ed638f0'),
  'EINVOICE_CODE': '',
  'AGENCY_NAME': 'Zuru Inc.',
  'MAIN_PHONE_NUMBER': '',
  'FAX_NUMBER': '',
  'WEBSITE': '',
  'DEFAULT_BILLING_CYCLE_INT': 235,
  'DEFAULT_BILLING_CALENDAR_INT': 128,
  'DEFAULT_CASH_COMMISSION': 0.0,
  'DEFAULT_TRADE_COMMISSION': 0.0,
  'EXTERNAL_AGENCY_CODE': '',
  'MICR_CODE': '',
  'ROW_STATE': 1,
  'CREATE_DATE': datetime.datetime(2016, 10, 18, 15, 45),
  'CREATE_BY': 'ObjectServer_KIDS_APP01/ongh004:SWNA\\$woadmin:dbo',
  'UPDATE_DATE': datetime.datetime(2016, 10, 18, 15, 44, 59, 290000),
  'UPDATE_BY': 'ObjectServer_KIDS_APP01/ongh004:SWNA\\$woadmin:dbo',
  'UPDATE_COUNT': 0,
  'IS_PENDING': 0,
  'EI_EXPORT_TYPE': 6,
  'AGENCY_REPORTING_NAME': 'Zuru Inc.',
  'DUNS_NUMBER': '',
  'TCODE': '',
  'AGENCY_EXTERNAL_ID': '',
  'MAIN_ADDRESS_INT': 2250,
  'GLOBAL_AGENCY_ID': None,
  'STATION_ARRAY': b '\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0f',
  'LOCKBOX_PARENT_INT': None,
  'AGENCY_TYPE_INT': 774,
  'AGENCY_GROUP': '',
  'OVERRIDE_CASH_PAYMENT_TERMS_INT': None,
  'DEFAULT_OPTIONAL_EDI_CODES': ''
}]  

这就是我正在尝试的。

rec = [dict(row) for row in list]
for x in rec:
    print(x['AGENCY_ID'])

它给出了正确的打印值,为 cbaf8fb4-7ada-4f4c-9726-fea39ed638f0

在将数据写入JSON文件时,它会在字符串更改的UUID数据的位置给出“无”。有什么办法可以使数据写入时不带“ none”并具有适当的值?

2 个答案:

答案 0 :(得分:0)

尝试在写入之前将您的UUID变量转换为字符串

foo = str(x['AGENCY_ID'])

答案 1 :(得分:0)

这是因为message1的类型为x[''AGENCY_ID],而不是字符串。您需要使用UUID函数将其强制转换为字符串。例如:

str