В принципе, сделка один или несколько добавлять, обновлять, удалять, изменять изменения в базу данных, которые все должны быть завершены или ни один из шагов не должен быть выполнен. Транзакционные базы данных полезны, когда важна целостность данных. Если один из шагов транзакции завершился с ошибкой, шаги должны быть возвращены в состояние, в которое не было внесено никаких изменений в базу данных.
Примером того, когда вам понадобится сделка, является то, когда вы делаете банковскую транзакцию, чтобы переводить деньги с одной учетной записи на другую. Сделка состоит из двух действий.
1) Возьмите деньги со счета
2) Положите деньги на счет Б.
Если вы не в состоянии удалить деньги со счета А, то сделка не удается, и никакие деньги не снимается со счета А и на счете нет денег.
Если вы успешно удалили деньги со счета A, но не смогли добавить деньги на счет B, то транзакция завершилась неудачно, и транзакция должна быть отменена, чтобы деньги не были взяты из счет A.
Только в том случае, если деньги удалены со счета A И добавлены в Учетную запись B, транзакция фиксирует изменения в базе данных.
Вот ссылка на пример кода для использования объекта SqlTransaction, чтобы начать транзакцию, совершить его, и откат на провале: https://stackoverflow.com/a/21285747/311749
не транзакционные базы данных, вероятно, имеет более высокую производительность, потому что Безразлично» t нужно беспокоиться о смене изменений. Отдельные данные в не транзакционной базе данных могут не требовать транзакционной обработки, как управление деньгами между банковскими счетами.
Примеры возможных списков, не связанных с транзакциями, включают: Списки клиентов, Контактная информация, Информация о поставщике, списки адресов и списки деталей.
Основные данные Services были разработаны для поддержки не транзакционных данных, которые вы хотите разделить с несколькими приложениями.
Например, вы можете использовать один основной список контактных данных члена компании и сделать его доступным для разных приложений. Если у вас много приложений, которым нужна эта же информация, это намного лучше, чем пытаться поддерживать другой список контактов для каждого приложения.
Дополнительные источники: https://en.wikipedia.org/wiki/Database_transaction
https://dba.stackexchange.com/questions/17246/diff-in-transactional-and-non-transactional-tables
Спасибо за ваш ответ Диего. Это имеет немного больше смысла. Я также нашел некоторые другие ссылки в Интернете [здесь] (http://blogs.gartner.com/andrew_white/2009/07/01/defining-mdm-again/) и [здесь] (http://datamanagement.manjeetss.com/что-это-мастер-данные). Но нет ничего по-настоящему четкого и прямого. На чем вы основали свой ответ? У вас есть ссылки? – philips
Я был вовлечен в проект MDM, так вот что имело смысл для меня – Diego