|
xml на ощупь. как убрать лишний xmlns ?
|
|||
---|---|---|---|
#18+
Здравствуйте! Хочу написать выгрузку СЗВ-ТД в XML Есть таблица: rabotnik fam dolgnname osnov_date osnov_nomer osnov_date2 osnov_nomer2 42429 Иванов механик 10.01.20 125 11.01.20 126 Почитала про namespace, практически на ощупь составила такой синтаксис Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37.
получаю вот это: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26.
а хочу так Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26.
я там два раза из одной и той же строки пишу select из таблицы, не придумала, как "одновременно" написать. Про Query почитала, но не смогла применить. Подскажите, пожалуйста, как исправить синтаксис? ... |
|||
:
Нравится:
Не нравится:
|
|||
25.02.2020, 13:32 |
|
xml на ощупь. как убрать лишний xmlns ?
|
|||
---|---|---|---|
#18+
Liana2509, How to remove Namespaces from XML tags when using FOR XML option WITH XMLNAMESPACES авторDuplicate namespaces when creating nested XML is a known problem with FOR XML. There is an existing connect (Microsoft bug) for it, which you can vote for here: http://connect.microsoft.com/SQLServer/feedback/details/265956/suppress-namespace-attributes-in-nested-select-for-xml-statements Other options include: ignore the duplicates. They don't do any harm apart from bloating the XML use REPLACE to strip them out ( eg convert to NVARCHAR(MAX), replace the duplicates namespaces, cast back to XML ) build up the XML then add namespaces, eg http://www.nesqlserv.com/blog/2009/09/removing-redundant-namespaces-from-for.html use FOR XML EXPLICIT ( a lot more complicated, but is a workaround for preventing namespace duplication ), eg http://social.msdn.microsoft.com/Forums/en/sqlxml/thread/9c26540c-3386-429a-aeff-d8bdc80e5801 write some custom CLR code to strip them ( a quick google shows numerous examples of this ) eg http://blogs.msdn.com/b/vbteam/archive/2010/06/09/removing-duplicate-namespaces-in-xml-literals-shyam-namboodiripad.aspx ... |
|||
:
Нравится:
Не нравится:
|
|||
25.02.2020, 17:26 |
|
xml на ощупь. как убрать лишний xmlns ?
|
|||
---|---|---|---|
#18+
Liana2509, если кратко: это достаточно трудоемко. сериализатор xml в sql server при работе с пространствами имен в режиме path добавляет его на каждый дочерний узел. как вариант не использовать for xml path с явными пространствами имен. прочитайте вот это: там есть несколько workaround-ов https://stackoverflow.com/questions/3242070/how-do-i-remove-redundant-namespace-in-nested-query-when-using-for-xml-path сам пользовался вот таким решением, если не нужно дефолтный xmlns Код: sql 1. 2. 3. 4.
... |
|||
:
Нравится:
Не нравится:
|
|||
25.02.2020, 17:50 |
|
xml на ощупь. как убрать лишний xmlns ?
|
|||
---|---|---|---|
#18+
не сильно умно вышла из положения: написала выгрузку по тегам как мне нужно, не обращая внимания на все xlmns, открыла файл в WordPad заменила строку с адресами на пустую строку. в первом (нужно варианте) вернула готова доработать ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2020, 09:07 |
|
|
start [/forum/topic.php?fid=46&fpage=64&tid=1686306]: |
0ms |
get settings: |
10ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
34ms |
get topic data: |
13ms |
get forum data: |
4ms |
get page messages: |
72ms |
get tp. blocked users: |
3ms |
others: | 339ms |
total: | 493ms |
0 / 0 |