Вопросы и ответы
Вопросы и ответы
Насколько я понял, источник данных можно использовать непосредственно (с помощью команд управления данными) или косвенно (в неподключенном стоянии). В каких случаях предпочтительнее использовать каждый из этих способов?
Метод на основе объекта DataSet (в неподключенном состоянии) по сравнению с непосредственным применением команд управления данными обладает несколькими преимуществами. Он предлагает более простой и единообразный способ перемещения данных между разными уровнями и местоположениями в распределенной базе данных, а также между разными приложениями баз данных благодаря встроенной поддержке языка XML. В нем предусмотрен механизм кэширования данных, что позволяет сортировать, фильтровать и искать данные без доступа к источнику данных. Наконец, он позволяет извлекать данные из нескольких таблиц или даже нескольких разных источников данных, а также манипулировать ими индивидуально или совместно на основе заданных между ними отношений.
Прямой способ доступа к источнику данных с помощью объекта Command также обладает определенными преимуществами. Некоторые операции, например изменение структуры базы данных, можно выполнить только с помощью прямого доступа. При прямом доступе даже стандартные команды SQL или хранимые процедуры могут быть выполнены быстрее и эффективнее, что позволяет добиться более высокой производительности и масштабируемости. Кроме того, этот способ позволяет сократить объем оперативной памяти для объекта DataSet, особенно при отсутствии насущной необходимости в кэшировании данных, например при создании Web-страницы или заполнении данными поля со списком.
Итак, когда же предпочтительнее использовать прямой доступ к базе данных вместо объекта DataSet? Прежде всего в тех случаях, когда операция может быть выполнена только с помощью объекта Command. Это относится к вызовам хранимых процедур, которые выполняют манипуляции с данными и возвращают только одно значение и/или значения параметров, а также к DDL-командам изменения структуры базы данных. Кроме того, не рекомендуется использовать объект DataSet, если данные используются только для чтения, используются недолго, а потому не оправданны их загрузка и хранение в оперативной памяти, либо используются сервером и их не нужно передавать на другие уровни приложения или компьютеры. В большинстве других случаев предпочтительнее обращаться к объекту DataSet.
Более 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)) !=