Вопросы и ответы
Вопросы и ответы
Мне понятно, как определить нарушение параллельного доступа, но как его устранить?
Ответ на этот вопрос зависит от конкретного приложения. Во-первых, при обнаружении нарушения параллельного доступа можно повторно отправить запрос к базе данных и начать работу с начала. Во-вторых, можно позволить второму пользователю переопределить изменения, внесенные первым пользователем. В-третьих, право окончательного выбора можно предоставить пользователю, предлагая ему все три набора данных: исходные значения, текущие значения и измененные им значения. Наконец, можно предложить алгоритм или логические правила для определения оптимального варианта самим приложением. При этом определяющим фактором выбора может быть приоритет или роль пользователя (например, изменения, внесенные руководителем, имеют более высокий приоритет, чем внесенные рядовым сотрудником). В модели ADO.NET и среде Visual Studio .NET предусмотрены специальные инструменты для обнаружения нарушений при параллельном доступе к данным. Разработчику остается только выбрать наиболее подходящие для создаваемого приложения.
Всегда ли следует использовать типизированные наборы данных?
Как обычно, ответ на этот вопрос зависит от конкретного приложения. В данной главе описаны преимущества типизированных наборов данных, но иногда предпочтительнее использовать нетипизированные наборы данных. Это верно в тех случаях, когда схема набора данных не известна или может изменяться. Классическим примером такой ситуации является использование незапланированных запросов, которые создаются пользователем при работе с приложением. Кроме того, схема может находиться в XML-файле, содержимое которого не известно во время создания приложения и генерации типизированного набора данных.
Еще одним недостатком использования типизированных наборов данных является необходимость повторной генерации и компиляции типизированных объектов — наборов данных при изменении схемы данных.
Наконец, стандартный нетипизированный объект DataSet настолько прост в использовании, что он может служить альтернативным вариантом для работы с данными без применения какой-то определенной схемы. Дополнительными преимуществами объекта DataSet является возможность работы с данными в формате XML.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
Ответы на вопросы
Ответы на вопросы Почему социальные сети могут нам в этом помочь? Объединение ваших клиентов в единую группу или сообщество ВКонтакте либо на Facebook позволяет сделать полезную информацию общедоступной. Если один пользователь спрашивает о чем-либо, другие участники группы
Вопросы и ответы
Вопросы и ответы Почему имена таблиц и полей иногда заключены в квадратные скобки?Квадратные скобки часто окружают имена объектов в среде Visual Studio.NET и административных инструментах SQL Server для исключения проблем при использовании имен с пробелами и другими
Вопросы и ответы
Вопросы и ответы Меня всегда пугала сложность работы с SQL Server, потому что эта СУБД казалась мне "черным ящиком". Мне знакомы случаи, когда люди чуть ли не сходили с ума от работы по созданию серверной части приложения. Неужели материала этой главы будет достаточно?Можно
Вопросы и ответы
Вопросы и ответы Судя по содержанию этой главы, модель ADO.NET предназначена для работы в отключенном режиме и нет никакой поддержки для серверных курсоров или пессимистической блокировки. А что же делать, если уже существующее приложение использует их или спецификации
Вопросы и ответы
Вопросы и ответы Иногда требуется программно создать и вставить в набор несколько записей, а затем внести эти обновления в базу данных. В модели ADO 2.X можно создать набор записей, но нельзя обновить базу данных. А как обстоит дело в модели ADO.NET?В модели ADO.NET это требование
Вопросы и ответы
Вопросы и ответы Мне понятно, как определить нарушение параллельного доступа, но как его устранить?Ответ на этот вопрос зависит от конкретного приложения. Во-первых, при обнаружении нарушения параллельного доступа можно повторно отправить запрос к базе данных и начать
Вопросы и ответы
Вопросы и ответы В среде Visual Studio .NET и программе SQL Server Enterprise Manager совпадают многие инструменты. Какие из них предпочтительнее использовать?Ответ прост: какие хотите. Для выполнения многих операций в среде Visual Studio .NET и программе SQL Server Enterprise Manager предусмотрены совершенно
Вопросы и ответы
Вопросы и ответы Что означает "создание схемы" в контексте XML?В контексте баз данных "создание схемы" означает создание документа с определениями объектов и сущностей. В контексте XML это понятие может быть расширено и охватывать другие сведения, например определение поля
Вопросы и ответы
Вопросы и ответы Иногда в документации по платформе.NET, помимо XSD-формата схемы данных, упоминается XDR-формат. Что это такое?XSD-формат — это стандартный формат определения схемы XML-данных, принятый консорциумом World Wide Web Consortium (W3C), который специализируется на создании
Вопросы и ответы
Вопросы и ответы К каким базам данных можно осуществлять доступ с помощью технологии ASP.NET?Технология ASP.NET обладает той же совместимостью с другими базами данных, что и технология ADO.NET, т.е. для любого источника данных, совместимого с ADO.NET, в ASP.NET предлагаются те же
Вопросы и ответы
Вопросы и ответы Можно ли вызывать Web-службы из языка Java?Да. В языке программирования Java предусмотрена библиотека классов java.net, предназначенная для подключения к Web-службе (по заданному URL-указателю посредством протокола HTTP), которая работает на платформе .NET. Для
ВОПРОСЫ И ОТВЕТЫ
ВОПРОСЫ И ОТВЕТЫ Ниже приведено несколько вопросов, которые помогут вам проверить и расширить свое понимание материала данной главы.Вопросы1. Икабод Боуди Марфут (ИБМ) подготовил программу, приведенную ниже, и принес ее вам для проверки. Пожалуйста, помогите ему найти в
ВОПРОСЫ И ОТВЕТЫ
ВОПРОСЫ И ОТВЕТЫ Рассмотрение приводимых ниже вопросов должно помочь вам глубже УСВОИТЬ материал данной главы.
ВОПРОСЫ И ОТВЕТЫ
ВОПРОСЫ И ОТВЕТЫ Рассмотрение приводимых ниже вопросов должно помочь вам глубже УСВОИТЬ материал данной главы.
ВОПРОСЫ И ОТВЕТЫ
ВОПРОСЫ И ОТВЕТЫ Вопросы 1. Что неправильно в этой программе? main( ){ int *fp;int k;fp = fopen("желе");for(k = 0; k < 30; k++)fputs(fp, "Нанетта ест желе.");fclose("желе");}2. Что будет делать следующая программа? #include <stdio.h>#include <ctype.h>main(argc, argv)int argc;char *argv[ ];{ int ch;FILE *fp;if((fp=fopen(argv[1], "r")) == NULL)exit(1);while((ch=getc(fp)) !=