Вопросы и ответы
Вопросы и ответы
Меня всегда пугала сложность работы с SQL Server, потому что эта СУБД казалась мне "черным ящиком". Мне знакомы случаи, когда люди чуть ли не сходили с ума от работы по созданию серверной части приложения. Неужели материала этой главы будет достаточно?
Можно сказать, и да и нет. В этой главе рассматриваются только основы использования SQL Server и совсем не охвачены вопросы ежедневного администрирования базы данных, настройки производительности и т.д. Эту главу следует рассматривать как введение в SQL Server, а не подробное руководство по его использованию. В первой части главы приведены необходимые сведения, которые могли бы облегчить работу с SQL Server и развеять опасения, что для этого нужны какие-то сверхусилия. Конечно, работа с SQL Server включает более сложные операции, например миграцию приложений от однопользовательских систем к распределенным, но для этого вовсе не нужно обладать искусством "черной" магии. (А чтобы не потерять рассудок, нужно не перетруждаться и почаще консультироваться с врачами.)
Если большинство моих запросов очень просты и не содержат сложных логических выражений, нужно ли мне использовать хранимые процедуры?
Да. По сути, есть два основных преимущества использования хранимых процедур вместо кодирования запросов SQL в коде приложения.
1. Производительность. Для многих программистов производительность является единственной причиной, по которой они стремятся использовать хранимые процедуры. Более высокая производительность хранимой процедуры по сравнению с кодом приложения связана с тем, что хранимая процедура откомпилирована и спланирована в SQL Server еще до вызова на выполнение. При передаче серверу на выполнение обычной команды SQL от клиентского приложения она должна быть обработана синтаксическим анализатором, откомпилирована, а также должен быть создан план ее выполнения. Поэтому выполнение всех этих действий непосредственно во время работы системы связано с большими накладными расходами и снижением производительности.
2. Управляемость. Реализация запросов в виде хранимых процедур означает, что все запросы приложения хранятся в одном централизованном месте, а не разбросаны среди сотен тысяч строк кода. Более того, такая организация запросов позволяет использовать их повторно и одновременно для одной базы данных во многих проектах и приложениях. Это приводит к меньшему объему работы (кодирование/отладка/тестирование) и меньшей вероятности возникновения ошибок. Это также позволяет использовать систему безопасности SQL Server. Наконец, применение хранимых процедур позволяет использовать стратегию "разделяй и властвуй", т.е. специализацию при создании кода приложения. Разработчики программного обеспечения, которые специализируются на создании бизнес-логики и управлении потоком выполнения приложения, могут сфокусировать внимание на создании кода приложения, а организацией доступа к базе данных и созданием запросов могут заняться разработчики баз данных и серверной части системы.
Более 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)) !=