Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 значение xml  [new]
Junior1997
Member

Откуда:
Сообщений: 19
Создал переменную и присвоил значение в которой должен храниться XML таким образом

DECLARE @NewCustomFeald XML
SELECT @NewCustomFeald =(SELECT 1 AS [@OrderNumber],0 AS [@Type], 2 AS [@ViewType], 'Comment' AS UniqueName, '' AS RelatedTypes,
    2        AS [DisplayedName/DataItems/DataItem/@LanguageID]  ,
   'UK'      AS [DisplayedName/DataItems/DataItem/@ShortName]  ,  
   'Comment' AS [DisplayedName/DataItems/DataItem]
    FOR XML PATH ('CustomField_93BB3EC45E5A4E3F882EC3CE3D226404'), ROOT ('StandardParagraphComplianc


тимлид переписал вот так
SET @customField = '
<StandardParagraphCompliance>
<CustomField_93BB3EC45E5A4E3F882EC3CE3D226404 OrderNumber="1" Type="0" ViewType="2">
<RelatedTypes>
<RelatedType>1</RelatedType>
</RelatedTypes>
<UniqueName>Comments</UniqueName>
<DisplayedName><DataItems>
<DataItem LanguageID="1" ShortName="DK">Kommentarer</DataItem>
<DataItem LanguageID="2" ShortName="UK">Comments</DataItem>
<DataItem LanguageID="7" ShortName="S"><![CDATA[Kommentarer]]></DataItem>
<DataItem LanguageID="9" ShortName="N"><![CDATA[Kommentarer]]></DataItem>
<DataItem LanguageID="10" ShortName="Fi"><![CDATA[Kommentteja]]></DataItem>
</DataItems></DisplayedName>
</CustomField_93BB3EC45E5A4E3F882EC3CE3D226404> 
</StandardParagraphCompliance>' 
SET @NewCustomFeald  = CAST(@customField AS XML)


В чём проблема моего варианта. он же более эстетичнее((( или я ошибаюсь
9 июл 19, 21:58    [21923812]     Ответить | Цитировать Сообщить модератору
 Re: значение xml  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 29526
Junior1997
он же более эстетичнее(((
Эстетичнее второй.

А ещё лучше такой:
DECLARE @NewCustomFeald XML = N'
<StandardParagraphCompliance>
	<CustomField_93BB3EC45E5A4E3F882EC3CE3D226404 OrderNumber="1" Type="0" ViewType="2">
		<RelatedTypes>
			<RelatedType>1</RelatedType>
		</RelatedTypes>
		<UniqueName>Comments</UniqueName>
		<DisplayedName><DataItems>
			<DataItem LanguageID="1" ShortName="DK">Kommentarer</DataItem>
			<DataItem LanguageID="2" ShortName="UK">Comments</DataItem>
			<DataItem LanguageID="7" ShortName="S"><![CDATA[Kommentarer]]></DataItem>
			<DataItem LanguageID="9" ShortName="N"><![CDATA[Kommentarer]]></DataItem>
			<DataItem LanguageID="10" ShortName="Fi"><![CDATA[Kommentteja]]></DataItem>
		</DataItems></DisplayedName>
	</CustomField_93BB3EC45E5A4E3F882EC3CE3D226404> 
</StandardParagraphCompliance>'
9 июл 19, 23:20    [21923855]     Ответить | Цитировать Сообщить модератору
 Re: значение xml  [new]
aleks222
Member

Откуда:
Сообщений: 754
Junior1997
В чём проблема моего варианта. он же более эстетичнее((( или я ошибаюсь


1. Начальник всегда прав.
2. Если начальник не прав - см. п.1.

Все зависит от задачи.

Если это вселенская константа - зачем ее собирать каждый раз? Только процессор грузить.
Если же предполагается некое разнообразие - то первый вариант является единственным.
10 июл 19, 06:07    [21923889]     Ответить | Цитировать Сообщить модератору
 Re: значение xml  [new]
lans
Member

Откуда:
Сообщений: 1117
а мне первый вариант боьльше нравиться, аккуратно.
10 июл 19, 11:45    [21924066]     Ответить | Цитировать Сообщить модератору
 Re: значение xml  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 6936
Не смущает, что результаты разные?
Готовый текст в любом случае проще читать.
10 июл 19, 15:34    [21924246]     Ответить | Цитировать Сообщить модератору
 Re: значение xml  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 29526
lans
а мне первый вариант боьльше нравиться, аккуратно.
Вычислять число Pi, вмето того, что бы хранить константу - аккуратно?
Любая константа всегда выглядит аккуратнее её вычисления.
10 июл 19, 15:35    [21924247]     Ответить | Цитировать Сообщить модератору
 Re: значение xml  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 29526
Владислав Колосов
Готовый текст в любом случае проще читать.
Угу, это и есть главный критерий "аккуратности" и "красоты". Что опытный тим-лид и понимает. Он же имел такой опыт, значет, сколько ему придётся потерять, а сколько люлей, наоборот, получить, если он оставит, не заметив, первый вариант. Не говоря уже о потере самоуважения, и авторитета у начальства.
10 июл 19, 15:38    [21924249]     Ответить | Цитировать Сообщить модератору
 Re: значение xml  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 6936
Правила корпоративной разработки ориентированы, прежде всего, на сокращение времени понимания постороннего кода.
10 июл 19, 15:42    [21924255]     Ответить | Цитировать Сообщить модератору
 Re: значение xml  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 29526
alexeyvg
Владислав Колосов
Готовый текст в любом случае проще читать.
Угу, это и есть главный критерий "аккуратности" и "красоты". Что опытный тим-лид и понимает. Он же имел такой опыт, значет, сколько ему придётся потерять, а сколько люлей, наоборот, получить, если он оставит, не заметив, первый вариант. Не говоря уже о потере самоуважения, и авторитета у начальства.
Я даже не говорю про другие недостатки, например, позднее связывание, затраты на выполнение, или про неудобство поиска.
Студент, который будет третьим программистом от Junior1997, будет 3 дня искать в проекте код по таску "добавить в XML константе к <RelatedType>1</RelatedType> ещё один тип, 2", притом, что таких проектов на поддержке у него будет 10, и в каждый он влезать душой совершенно не собирается, тем более за ту зарплату.
10 июл 19, 15:45    [21924258]     Ответить | Цитировать Сообщить модератору
 Re: значение xml  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 29526
Владислав Колосов
Правила корпоративной разработки ориентированы, прежде всего, на сокращение времени понимания постороннего кода.
Я бы даже сказал, "правила здравого смысла" :-) В своих проектах, а не только в корпоративных, этим правилам нужно следовать (впрочем, жизнь научит, настоящими программистами становятся, когда хотя бы годик поддерживают работающий, и приносящий бабло, проект).
10 июл 19, 15:48    [21924263]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить