Обычно ли CLR UDT используются в корпоративных приложениях?

StackOverflow https://stackoverflow.com/questions/485829

Вопрос

Я изучаю некоторые из новых технологий, доступных в SQL Server 2005/2008.Большинство моих приложений написаны на C # и обычно имеют компонент базы данных.Большая часть того, что я нахожу в Google, - это основное: "Вот как вы настраиваете CLR UDT".У меня есть несколько общих вопросов об их реальном применении.

  • Обычно ли в приложениях используются UDT, размещенные в среде CLR?Большой или мелкий масштаб
  • Есть ли проблемы с производительностью при их использовании?
  • Обычно ли администраторы баз данных предпочитают использовать только встроенные типы?

Они кажутся способом просто втиснуть объект в таблицу.Прав ли я, предполагая, что фактический круг проблем, которые имеют упрощенные решения из-за их использования, минимален?

Это было полезно?

Решение

UDT имеют преимущество только тогда, когда они действительно представляют какой-то фундаментальный элемент вашего приложения.Почти всегда их можно разбить на встроенные типы, но преимущества заключаются в том, что вам не нужно приводить возвращаемый объект.Поэтому вам, вероятно, не следует использовать UDT, которые представляют сложные объекты, такие как Employee , но что-то фундаментальное, например размер или местоположение, может быть хорошим выбором, потому что оно легкое, но очень жесткое по своему определению.

Другие советы

Я исследовал их использование, но мне стало не по себе из-за управления версиями.Что произойдет, если вы загрузите более новую версию сборки на сервер?Из-за зависимостей вам пришлось бы удалить UDT и воссоздать его заново, но что тогда происходит с данными?Мы придерживаемся встроенных типов.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top