Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2007.12.09;
Скачать: [xml.tar.bz2];

Вниз

Импортирование данных из XML   Найти похожие ветки 

 
DelphiLexx ©   (2007-08-06 12:18) [0]

Есть XML файл созданный моей программой, данными XML файла являются данные БД1  
Вот часть кода моего xml"a

<?xml version="1.0" encoding="Windows-1251" ?>
<Main>
<RAW_DICT>
   <RAW_DICT_ROW RAW_ID="4" RAW_GROUP_ID="5" RAW_NAME="Название сырья №1" DESCRIPTION="">
     <RAW_QM_VALUE>
       <RAW_QM_VALUE_ROW QM_ID="10" QM_VALUE="27"/>
       <RAW_QM_VALUE_ROW QM_ID="5" QM_VALUE="0"/>
       <RAW_QM_VALUE_ROW QM_ID="4" QM_VALUE="1.1"/>
       <RAW_QM_VALUE_ROW QM_ID="9" QM_VALUE="12"/>
     </RAW_QM_VALUE>
   </RAW_DICT_ROW>
</RAW_DICT>
<CONTENTS>
<CONTENTS_ROW RCP_CONTENTS_ID="-3142" RAW_ID="4" PERCENT="22">
 <RCP_QM_VALUE>
  <RCP_QM_VALUE_ROW QM_ID="47" QM_VALUE="183" />
  <RCP_QM_VALUE_ROW QM_ID="6" QM_VALUE="32.5" />
 </RCP_QM_VALUE>
</CONTENTS_ROW>
</CONTENTS>
</Main>

Дело в том что при вставке в БД2, (БД2 имеет идентичную стуктуру БД1), значение RAW_ID берется не из тэга <RAW_DICT_ROW>,  а из генератора таблицы RAW_DICT БД2, т.е. может взяться не 4 (для данного примера), а, например,  25. В связи с этим для корректного импорта необходимо в XML - документе заменить RAW_ID = 4, на RAW_ID = 25. Можно ли эти трюки делать средствами самого XML?


 
Reindeer Moss Eater ©   (2007-08-06 13:32) [1]

А зачем менять значение в XML, если значение это все равно будет взято из генератора?


 
DelphiLexx ©   (2007-08-06 13:50) [2]


> А зачем менять значение в XML, если значение это все равно
> будет взято из генератора?

А затем, что это поле может быть внешним ключом (ссылкой), например RAW_GROUP_ID.

<?xml version="1.0" encoding="Windows-1251" ?>
<Main>
<RAW_GROUPS>
 <ROW RAW_GROUP_ID="1" PARENT="" SEQUENCE_ID="1" ></ROW>
...
 <ROW RAW_GROUP_ID="5" PARENT="2" SEQUENCE_ID="4"></ROW>
 <ROW RAW_GROUP_ID="6" PARENT="2" SEQUENCE_ID="5"></ROW>
...
 <ROW RAW_GROUP_ID="38" PARENT="3" SEQUENCE_ID="37"> </ROW>
</RAW_GROUPS>

<RAW_DICT>
  <RAW_DICT_ROW RAW_ID="4" RAW_GROUP_ID="5" RAW_NAME="Название сырья №1" DESCRIPTION="">
    <RAW_QM_VALUE>
      <RAW_QM_VALUE_ROW QM_ID="10" QM_VALUE="27"/>
      <RAW_QM_VALUE_ROW QM_ID="5" QM_VALUE="0"/>
      <RAW_QM_VALUE_ROW QM_ID="4" QM_VALUE="1.1"/>
      <RAW_QM_VALUE_ROW QM_ID="9" QM_VALUE="12"/>
    </RAW_QM_VALUE>
  </RAW_DICT_ROW>
</RAW_DICT>
...
</Main>


 
Reindeer Moss Eater ©   (2007-08-06 16:55) [3]

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



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2007.12.09;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.048 c
6-1175280082
Адепт Магии Слова
2007-03-30 22:41
2007.12.09
Как програмно можно изменить рабочую группу компьютера


2-1194370102
lobach
2007-11-06 20:28
2007.12.09
Как спрятать программу от диспетчера задач???


2-1194838802
d@nger
2007-11-12 06:40
2007.12.09
Jpeg и дата съемки


2-1194979634
vegarulez
2007-11-13 21:47
2007.12.09
Вопрос про Font при выводе на принтер.


15-1194867744
@!!ex
2007-11-12 14:42
2007.12.09
Проект вылетает





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский