Надо закачать json-файл в таблицу PostgreSQl. Но он какой-то странный. | |
---|---|
tata Автор Сообщений: 3381 Откуда: Казань Дата регистрации: 23.10.2005 |
Всем привет.
Получила задачу - закачать json-файл в таблицу postgres. Файл выглядит так: [{\"RowID\":\"20202\",\"Cell\":\"ВходОcтРуб\",\"Value\":\"01010\",\"Type\":\"Numeric\"}]. Таблицу создала. CREATE TABLE dh.t_json( RowID int generated always as identity NOT NULL, Cell varchat(5) NOT NULL, Value text NOT NULL, Type Numeric NULL ); ALTER TABLE dh.t_json OWNER TO postgres; ALTER TABLE dh.t_json ADD CONSTRAINT pk_t_json_pattern PRIMARY KEY (id); Теперь бы распарсить. А как? Что за странные слеши внутри? И, насколько я знаю, запись — это неупорядоченное множество пар ключ:значение, заключённое в фигурные скобки «{ }». Ключ описывается строкой, между ним и значением стоит символ «:». Пары ключ-значение отделяются друг от друга запятыми. массив (одномерный) — это упорядоченное множество значений. Массив заключается в квадратные скобки «[ ]». Значения разделяются запятыми. Массив может быть пустым, то есть не содержать ни одного значения. Значения в пределах одного массива могут иметь разный тип. Получается, что это массив из json объектов, которые нужно сохранять. Исправлено 1 раз(а). Последнее : tata, 04.02.23 22:22 ![]() |
Re: Надо закачать json-файл в таблицу PostgreSQl. Но он какой-то странный. | |
---|---|
ssa Сообщений: 12922 Откуда: Москва Дата регистрации: 23.03.2005 |
Экранирование двойных кавычек. То есть они часть значений и не должны резаться. ------------------ Лень - это неосознанная мудрость. ![]() |
Re: Надо закачать json-файл в таблицу PostgreSQl. Но он какой-то странный. | |
---|---|
ssa Сообщений: 12922 Откуда: Москва Дата регистрации: 23.03.2005 |
Но после более внимательного рассмотрения твоего примера приходим к выводу, 'то это не сам JSON, а какой-то конверт/котейнер с ним. Сам JSON должен выглядеть вот так:
------------------ Лень - это неосознанная мудрость. ![]() |
Re: Надо закачать json-файл в таблицу PostgreSQl. Но он какой-то странный. | |
---|---|
ssa Сообщений: 12922 Откуда: Москва Дата регистрации: 23.03.2005 |
------------------ Лень - это неосознанная мудрость. ![]() |
Re: Надо закачать json-файл в таблицу PostgreSQl. Но он какой-то странный. | |
---|---|
Sega Сообщений: 510 Откуда: Ярославль Дата регистрации: 27.12.2000 |
Наружные квадратные скобки указывают на то, что это массив JSON структур.
По крайней мере исходная конструкция [{ "RowID": "20202", "Cell": "ВходОcтРуб", "Value": "01010", "Type": "Numeric" }]валидацию проходит ![]() |
Re: Надо закачать json-файл в таблицу PostgreSQl. Но он какой-то странный. | |
---|---|
of63 Сообщений: 24232 Откуда: Н.Новгород Дата регистрации: 13.02.2008 |
- пропусти его через интернет-конвертер "всего-ао-всё"
- забыл уже.. у Тани типичный JSON (экранировние кавычек обратным слешем), и... ? Вопрос то какой? () бл... недавно рекламировал код перевода, идею..., интересно сработает ли на ... Исправлено 1 раз(а). Последнее : of63, 15.02.23 01:20 ![]() |
Re: Надо закачать json-файл в таблицу PostgreSQl. Но он какой-то странный. | |
---|---|
of63 Сообщений: 24232 Откуда: Н.Новгород Дата регистрации: 13.02.2008 |
наружные квадратные скобки - это "1-массив" в жисоне...
Доб, в составе м.б. любые жисон обьекты, в т.ч сами жисон обьекты... интригующе ) Исправлено 1 раз(а). Последнее : of63, 15.02.23 01:34 ![]() |
Re: Надо закачать json-файл в таблицу PostgreSQl. Но он какой-то странный. | |
---|---|
of63 Сообщений: 24232 Откуда: Н.Новгород Дата регистрации: 13.02.2008 |
Sega! А ка принять это файл, прошедшй валидацию, превратить его в DBF например?! ) ![]() |
Re: Надо закачать json-файл в таблицу PostgreSQl. Но он какой-то странный. | |
---|---|
of63 Сообщений: 24232 Откуда: Н.Новгород Дата регистрации: 13.02.2008 |
это массив из одного элемента-обьекта, и?
аа "Теперь бы распарсить. А как?" как как, встроенными средствами ЯП, и конструкциями на нем... () и что хотелось бы экзаменатору видеть в ответе Исправлено 2 раз(а). Последнее : of63, 15.02.23 13:40 ![]() |
Re: Надо закачать json-файл в таблицу PostgreSQl. Но он какой-то странный. | |
---|---|
ssa Сообщений: 12922 Откуда: Москва Дата регистрации: 23.03.2005 |
Олег, ты мой ответ от 05.02.23 12:06:47 не видишь? Или не хочешь видеть? ------------------ Лень - это неосознанная мудрость. ![]() |
Re: Надо закачать json-файл в таблицу PostgreSQl. Но он какой-то странный. | |
---|---|
of63 Сообщений: 24232 Откуда: Н.Новгород Дата регистрации: 13.02.2008 |
Сергей, четче выражай народу сетенции! )
() Стареем... ()() youtu.be Щас просто уе. всех нехороших варианты. . Серега, ты вне претензий Исправлено 1 раз(а). Последнее : of63, 15.02.23 21:27 ![]() |
Re: Надо закачать json-файл в таблицу PostgreSQl. Но он какой-то странный. | |
---|---|
of63 Сообщений: 24232 Откуда: Н.Новгород Дата регистрации: 13.02.2008 |
select * from json_to_record('{"rowid":"20202","cell":"ВходОcтРуб","value":"01010","type": "Numeric"}') as t(rowid text, cell varchar, value varchar, type varchar); Что за фигня.. функция json_to_record ? в ней мое непонимание? ![]() |
Re: Надо закачать json-файл в таблицу PostgreSQl. Но он какой-то странный. | |
---|---|
ssa Сообщений: 12922 Откуда: Москва Дата регистрации: 23.03.2005 |
Функция такая есть в Postgres. Изучай. ------------------ Лень - это неосознанная мудрость. ![]() |
© 2000-2023 Fox Club  |