У меня есть файл XML, который разбит на более мелкие таблицы. Я могу загрузить их в Navicat, все отлично, кроме одной таблицы. Вот структура XML:
<Food>
<Id> 100 </Id>
<Type> Meat </Type>
<Expiry Date>
<Chicken>
2020/12/20
</Chicken>
<Beef>
2020/12/25
</Beef>
</Expiry Date>
</Food>
<Food>
<Id> 200 </Id>
<Type> Vegetables </Type>
<Nutrition> B1 </Nutrition>
</Food>
Я превратил его в JSON, используя xmltodict в Python:
[{
"Id": "100",
"Type": "Meat",
"Expiry Date": {
"Chicken": "2020/12/20",
"Beef": "2020/12/25"
}
},
{
"Id": "200",
"Type": "Vegetables",
"Nutrition": "B1"
}]
Однако, когда я загружаю этот файл JSON в Navicat (соединение PostgresSQL), схема таблицы SQL имеет только идентификатор, тип и дату истечения срока действия. Как видите, ключи отсутствуют в одном объекте, но появляются в других. Как я могу создать таблицу SQL со всеми полями из файла JSON? (Идентификатор, тип, срок годности и питание).
INSERT
в базу данных. В качестве альтернативы используйтеjson_array_elements
и оператор->>
, чтобы сделать это в базе данных. - person Laurenz Albe   schedule 14.12.2020