Как сохранить данные XML в базу данных sqlite

1

У меня есть данные формата XML, которые поступают с сервера. Теперь я хочу сохранить его в базе данных, и он должен загружаться при нажатии кнопки. Как мне это сделать?

enter code here

<qst_code>    7    </qst_code>
<qst_prg_code>    1     </qst_prg_code>
<qst_mod_code>    2   </qst_mod_code>







<qst_Question>What is not true about left dominant cardiology circulation?  </qst_Question>



<qst_opt1>It is seen in 20% of the population</qst_opt1>
<qst_opt2>Left circumflex artery supplies the Posterior descending artery</qst_opt2>
<qst_opt3>Left circumflex artery terminates as obtuse marginal branch</qst_opt3>
<qst_opt4>Left circumflex artery may originate from right coronary sinus</qst_opt4>
<qst_opt01>1</qst_opt01>
<qst_opt02>1</qst_opt02>
<qst_opt03>1</qst_opt03>



<qst_opt04>1</qst_opt04>
<qst_CorctOpt>1</qst_CorctOpt>
<qst_Marks>10</qst_Marks>
<qst_company_code>1</qst_company_code>
<user_code>1</user_code>

  • 0
    XML хранит данные в дереве. SQLite хранит данные в таблицах. Существует много способов перевода между деревом и таблицей; Я не могу помочь вам выбрать лучший способ, потому что я понятия не имею, как выглядят эти данные или что вы делаете с ними. Вам нужно будет предоставить больше информации.
  • 0
    спасибо Майк я предоставляю структуру данных XML
Теги:
sqlite3

2 ответа

3

Один из вариантов заключается в том, чтобы сохранить его как строку, если данные не слишком велики, иначе разложите его на схему, которая сопоставляется с sqlite и воссоздает ее во время загрузки.

1

Если ваши XML-данные велики, я бы скорее изменил тип обмена данными на json. Разбор XML, а затем вставка - очень дорогостоящая операция и занимает много времени.

Некоторые проблемы, с которыми вам придется столкнуться при анализе и вставке XML.

а. Разбор XML интенсивно занимает память, поэтому размер кучи будет расти, вам нужно следить за этим, так как это может привести к сбою. б. Вставки в SQLite DB будут занимать ~ 100 мс за кортеж (строка), поэтому вы можете рассчитать время, необходимое для перекачки в тысячах строк данных.

Если данные не слишком велики, не беспокойтесь об использовании SQLite.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню