Шаблоны разработки реляционной базы данных?

Предполагая, что вы используете тот же CDN для css и jQuery, почему бы просто не сделать один тест и не поймать его?

<link href="//ajax.googleapis.com/ajax/libs/jqueryui/1/themes/start/jquery-ui.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jqueryui/1/jquery-ui.min.js"></script>
<script type="text/javascript">
    if (typeof jQuery == 'undefined') {
        document.write(unescape('%3Clink rel="stylesheet" type="text/css" href="../../Content/jquery-ui-1.8.16.custom.css" /%3E'));
        document.write(unescape('%3Cscript type="text/javascript" src="/jQuery/jquery-1.6.4.min.js" %3E%3C/script%3E'));
        document.write(unescape('%3Cscript type="text/javascript" src="/jQuery/jquery-ui-1.8.16.custom.min.js" %3E%3C/script%3E'));
    }
</script>
273
задан 7 revs 10 October 2008 в 13:09
поделиться

9 ответов

Существует книга в Ряду Подписи Martin Fowler, названном Базы данных Рефакторинга . Это предоставляет список методов для рефакторинга баз данных. Я не могу сказать, что услышал список шаблонов базы данных так.

я также настоятельно рекомендовал бы David C. Hay Шаблоны Модели данных и развитие Карта Метаданных А, которая основывается на первом и является намного более амбициозной и интригующей. Одно только Предисловие поучительно.

Также великолепное место для поиска некоторых предконсервированных моделей базы данных является Книжной серией Ресурса Модели данных Len Silverston , Объем 1 содержит универсально применимые модели данных (сотрудники, учетные записи, поставка, покупки, и т.д.), , Объем 2 содержит промышленность определенные модели данных (учет, здравоохранение, и т.д.), , Объем 3 обеспечивает шаблоны модели данных.

Наконец, в то время как эта книга якобы о UML и Объектном моделировании, Peter Coad , Моделирование в цвете С UML предоставляет "архетипу" управляемый процесс моделирования объекта, начинающего с предпосылки, что существует 4 базовых архетипа любого объекта/модели данных

142
ответ дан Toby Speight 4 November 2019 в 11:48
поделиться

Вот ссылка на джентльмена, который разработал несколько сотен бесплатных схем базы данных.

http://www.databaseanswers.org/data_models/

, Возможно, если необходимо создать дб быстро, это даст Вам начальную точку с точки зрения таблиц и отношений в данной схеме. Следует иметь в виду, что необходимо будет, вероятно, изменить эту начальную точку. Я нашел его очень полезным.

, Во-вторых, Журнал SQL Server имеет случайный столбец, названный "Средство моделирования данных", которое является очень образовательным и часто содержит полные схемы для данной системы.

133
ответ дан Thomas Wagner 4 November 2019 в 11:48
поделиться

Шаблоны разработки не являются тривиально допускающими повторное использование решениями.

Шаблоны разработки являются допускающими повторное использование по определению. Они - шаблоны , Вы обнаруживаете в других хороших решениях.

шаблон А не является тривиально допускающим повторное использование. Можно реализовать Ваш вниз дизайн после шаблона как бы то ни было.

Реляционные скороговорки дизайна включают вещи как:

  1. Связи "один ко многим" (основная деталь, родительский ребенок) отношения с помощью внешнего ключа.

  2. отношения Many-Many с таблицей моста.

  3. Дополнительные непосредственные отношения, управляемые с ПУСТЫМИ УКАЗАТЕЛЯМИ в столбце FK.

  4. Схема "звезда": Размер и Факт, дизайн OLAP.

  5. Полностью нормализованный дизайн OLTP.

  6. Несколько индексируемых поисковых столбцов в размере.

  7. "Таблица поиска", которая содержит PK, описание и кодовое обозначение (обозначения), используемое одним или несколькими приложениями. Почему имеет код? Я не знаю, но когда они должны использоваться, это - способ управлять кодами.

  8. Uni-таблица. [Некоторый вызов это антишаблон; это - шаблон, иногда это плохо, иногда это хорошо.] Это - таблица с большим количеством материала, к которому предварительно присоединяются, который нарушает вторую и третью нормальную форму.

  9. таблица Array. Это - таблица, которая нарушает первую нормальную форму при наличии массива или последовательности значений в столбцах.

  10. база данных Смешанного использования. Это - база данных, нормализованная для обработки транзакций, но с большим количеством дополнительных индексов для создания отчетов и анализа. Это - антишаблон - не делают этого. Люди делают это так или иначе, таким образом, это - все еще шаблон.

Большинство людей, которые разрабатывают базы данных, может легко отбарабанить полдюжина, "Это - другой тех"; это шаблоны разработки, которые они используют регулярно.

И это не включает административные и операционные шаблоны использования и управления.

44
ответ дан S.Lott 4 November 2019 в 11:48
поделиться

Проверьте этот блог - Программист баз данных .

Он описывает [приблизительно 111] шаблоны базы данных .

19
ответ дан Edo 4 November 2019 в 11:48
поделиться

Книги Joe Celko превосходны для этого вида материала, в особенности "SQL для Присяжных острословов". У него есть некоторые инновационные решения к типичным проблемам, большинство которых является допускающими повторное использование шаблонами разработки.

http://www.celko.com/books.htm

16
ответ дан skaffman 4 November 2019 в 11:48
поделиться

AskTom является, вероятно, единственным самым полезным ресурсом на лучших практиках на DBS Oracle. (Я обычно просто ввожу "asktom" как первое слово запроса Google по конкретной теме)

, я не думаю, что действительно уместно говорить о шаблонах разработки с реляционными базами данных. Реляционные базы данных уже являются приложением "шаблона разработки" к проблеме (проблема, являющаяся, "как представить, сохранить и работать с данными при поддержании его целостности" и дизайна, являющегося реляционной моделью). Другие approches (обычно рассматриваемый устаревшим) являются моделями Navigational и Hierarchical (и я - nure многие другие, существуют).

Однако Вы могли бы рассмотреть "Организацию хранилищ данных" как несколько отдельный "шаблон" или подход в проектировании баз данных. В частности, Вы могли бы интересоваться чтением о Схема "звезда" .

6
ответ дан Galghamon 4 November 2019 в 11:48
поделиться

После многих лет разработки базы данных, которую я могу сказать, существуют некоторые, которые никакой не идет и некоторый вопрос, на который необходимо ответить перед началом:

вопросы:

  • Вы хотите использование в будущем другой DBMS? Если да тогда не использует для специального материала SQL текущего DBMS. Удалите логику в своем приложении.

не использует:

  • пробелы в именах таблиц и именах столбцов
  • символы Non Ascii в именах таблиц и именах столбцов
  • привязка к определенному нижнему регистру или верхнему регистру. И никогда не используйте 2 таблицы или столбцы, которые не соглашаются только с нижним регистром и верхним регистром.
  • не использует ключевые слова SQL для таблиц или названий столбцов как "ОТ", "МЕЖДУ", "УДАЛЯЕТ", и т.д.

рекомендации:

  • Использование NVARCHAR или эквиваленты для unicode поддерживают тогда, у Вас нет проблем с кодовыми страницами.
  • Дают каждому столбцу уникальное имя. Это делает его, easer на соединяют для выбора столбца. Это очень трудно, если каждая таблица имеет столбец "ID" или "Name" или "Description". Используйте XyzID и AbcID.
  • Использование пакет ресурса или равняется для сложных SQL-выражений. Это делает его easer для переключения на другой DBMS.
  • не бросает трудно ни на каком типе данных. Другой DBMS не может иметь этого типа данных. Например, Oracle daes не имеет SMALLINT только число.

я надеюсь, что это - хорошая начальная точка.

4
ответ дан Horcrux7 4 November 2019 в 11:48
поделиться

Ваш вопрос немного неопределенен, но я предполагаю UPSERT , мог считаться шаблоном разработки. Для языков, которые не реализуют MERGE, много альтернатив для решения проблемы (если подходящие строки существует, UPDATE; еще INSERT), существуют.

1
ответ дан Community 4 November 2019 в 11:48
поделиться

Зависит, что Вы подразумеваете под шаблоном. Если Вы думаете Человек/Компания/Транзакция/Продукт и такой, то да - существует много универсальных схем базы данных, уже доступных.

, Если Вы думаете Фабрика, Singleton... тогда нет - Вам не нужен ни один из них, поскольку они - слишком низкий уровень для программирования DB.

, Если Вы думаете именование объекта базы данных, тогда оно находится под категорией соглашений, не разрабатывают по сути.

BTW, S.Lott, one-many и many-many отношения не являются "шаблонами". Они - основные стандартные блоки реляционной модели.

1
ответ дан Andrew not the Saint 4 November 2019 в 11:48
поделиться
Другие вопросы по тегам:

Похожие вопросы: