|
|
|
новичок
      
участник
Last Login: 30.09.2003 13:01
Сообщ.: 5,
Visits: 56
|
|
| предположим, что информация хранится в XML-файлах, по определенному шаблону. И надо часть данных, т.е. данные определеннных тэгов, занести в БД. Как это можно сделать? И что использовать? Заранее благодарна.
|
|
|
|
|
Supreme Being
      
участник
Last Login: 23.11.2006 11:47
Сообщ.: 549,
Visits: 6 023
|
|
| в .net это довольно просто сделать. да и в ado можно при помощи asp.
|
|
|
|
|
Supreme Being
модератор
Last Login: 04.05.2008 13:32
Сообщ.: 7 240,
Visits: 65 445
|
|
Все зависит от используемой веб-технологии и структуры XML файла В самом простом случае XML файл можно трактовать как обычный текстовый файл с заранее известеной структурой т.е. считывать построчно и делать нужные действия. В более сложном случае можно использовать XML Parser. Тогла придется либо "вручную" проходить по дереву XML документа и выбирать нужные узлы, либо выбирать узлы с помощью выражений XPath. И третий вариант - использование SAX (Simple API for XML). Этот вариант эффективен при разборе XML файлов большого размера.
|
|
|
|
|
Forum Guru
      
участник
Last Login: 22.09.2003 15:45
Сообщ.: 68,
Visits: 749
|
|
В любом случае XML надо парсить и из распасенного XML значения вносить в БД (приблизительно как из массива). Вопрос только в том как будешь парсить. Ручками - как-то некруто :) Каким-нить парсером с DOM моделью - нормально, если файлы не гигантские. Если БД - SQL Server, то там есть ф-ции работы с XML. Можно написать процедуру, которой передается текст, а она сама потом по табличкам все раскладывает.
|
|
|
|
|
Supreme Being
      
участник
Last Login: 17.04.2008 14:50
Сообщ.: 640,
Visits: 7 047
|
|
Вопрос спорный, круто или не круто парсить ручками... Часто процедуры парсинга, написаные самостоятельно, намного быстрее и гибче чем процедуры из подключаемых библиотек... Ведь те по большому счету делают то же самое, только с претензией на универсальность, и не знакомы с конкретной задачей программиста...
|
|
|
|
|
Forum Guru
      
участник
Last Login: 22.09.2003 15:45
Сообщ.: 68,
Visits: 749
|
|
То, что вопрос спорный - это факт! Собственно, как и все остальное, этот вопрос зависит от поставленной задачи. Лично я придерживаюсь мнения, что если есть сторонние библиотеки, которые вполне приемлемо работают, то тратить время на разработку их аналогов нелогично. Потом опять же все упирается в то, насколько серьезно надо парсить. Что-то мне подсказывает, что делать самому реализацию W3C DOM при наличии нормальных реализаций стороннего производителя какое-то муторное и безполезное занятие. Ну только если в каких-нить исключительных случаях. И опять, если xml получается простой как дважды два, то может он вообще нафиг ненужен? На да ладно - кто как хочет, тот так и пишет(свобода выбора, однако ;) ).
Мне по поводу вопроса kras пришла хорошая мысль: сделать XSLT, который трансформирует исходный XML код трансформирует в SQL скрипт, и получившийся скрипт банально исполнить в пакетном режиме. Либо с помощью того же XSLT трансформировать файлы в CSV формат и залить какой-нить тулзой в базу. У SQL сервера есть хорошая тулза -bcp назывется. Весьма шустро работает...
|
|
|
|
|
Supreme Being
      
участник
Last Login: 23.11.2006 11:47
Сообщ.: 549,
Visits: 6 023
|
|
| мне тоже кажется что вручную xml разбирать - это странно, когда есть готовые решения. ведь нужно начать с символа < потом что идет после него, чтобы каждый тег закрыт был, чтобы фалй правилам составления xml удовлетворял - полноценный разборо будет очень сложно осуществить
|
|
|
|