Конвертировать YAML в оператор SQL - PullRequest
0 голосов
/ 25 апреля 2019

У меня есть файл yaml, который содержит данные, которые нужно поместить в таблицу, мне нужно преобразовать каждый объект yaml в sql.Может кто-нибудь сказать мне, что я могу использовать, чтобы преобразовать его в SQL заявление

, например,

- model: ss
  pk: 2
  fields: {created_by: xxx, created_date: !!timestamp '2018-09-13 
    17:50:30.821769+00:00',
   modified_by: null, modified_date: null, record_version: 0, team_name: 
   privat, team_type: abc}

1 Ответ

0 голосов
/ 25 апреля 2019

В питоне

data_loaded = None

with open("data.yaml", 'r') as stream:
    data_loaded = yaml.load(stream)

if data_loaded:
   cols, vals = data_loaded["fields"].items()
   table = data_loaded["model"]
   sql = "INSERT INTO %s %s VALUES %s;" % ( table, tuple(cols), tuple(vals))

В зависимости от диалекта SQL вам может потребоваться дополнительная забота о литеральных типах (например, замена двойных кавычек одиночными, формат отметки времени и т. Д.)

...