Хомоненко А.Д., Цыганков В.М., Мальцев М.Г. - Базы данных. Учебник для высших учебных заведений (6-е изд.) - 2009 (960530), страница 73
Текст из файла (страница 73)
1 2 . 2 0 0 3 1:42В E:\Documents and.ИзмененЗаменитьОбновить1 4 . 1 2 . 2 0 0 3 1:52IОтменаРис. 10.37. Окно Обновление ПортфельВ зависимости от изменений в каждой паре реплик система предлагает однуиз операций синхронизации, основными из которых являются: замена (перенос изменений из одной изменившейся реплики в другую, не подвергшуюсяизменениям), объединение (взаимное согласование изменений в репликах),создание (создание реплики в случае, если в папке П о р т ф е л ь ( M y B r i e f c a s e )оказалась обычная БД), пропуск (в списке реплик окна не обрабатывать текущую реплику). При желании с помощью мыши легко можно изменить предложенную операцию обработки любой из реплик.Чтобы обновить реплики, хранящиеся в папке П о р т ф е л ь ( M y B r i e f c a s e ) ,нужно выполнить команду в папке П о р т ф е л ь | О б н о в и т ь в с е ( M y B r i e f c a s e| U p d a t e all). Появится окно, аналогичное рассмотренному ранее.Чтобы разорвать связь одной реплики из папки П о р т ф е л ь ( M y B r i e f c a s e )с другой, нужно выделить в окне П о р т ф е л ь ( M y B r i e f c a s e ) эту реплику БД ивыдать команду П о р т ф е л ь | О т д е л и т ь о т о р и г и н а л а ( M y B r i e f c a s e | S p l i tF r o m O r i g i n a l ) .
После этого команды обновления для этой реплики стаиовят-10. СУБД Access 2002347ся недоступными. Синхронизация для этой реплики из Access возможна, нореальные изменения над данными этой реплики не производятся.При независимой работе пользователей с репликами могут возникать конфликты. Чаще всего они связаны с нарушением целостности данных (например, появление одинаковых значений в ключевом поле разных реплик) или спротиворечием условиям, контролирующим значения данных в таблице.Если в процессе синхронизации система находит ошибки, пользователю обэтом сообщается, а устраняет ошибки пользователь. Вызвать функцию контроля реплик на наличие конфликтов можно явно, задав команду меню С е р в и с| Р е п л и к а ц и я | У с т р а н и т ь к о н ф л и к т ы (Tools | Replication | Resolve Conflicts).При обнаружении конфликтов Access выводит пользователю окно, содержащее информацию по устранению конфликтов. С его помощью можно выяснить причину и найти конфликтные записи в репликах, отобразить пояснение методов исправления ошибок.Существенную роль при разрешении конфликтов в процессе синхронизацииимеют приоритеты реплик, которые устанавливаются в момент создания реплик (кнопка П р и о р и т е т ( P r i o r i t y ) в окне создания реплики).
Приоритеты находятся в диапазоне 0-100, причем большему значению соответствует более высокий приоритет при разрешении конфликтов. В случае с одинаковыми значениямиприоритетов преимущество отдается реплике с наименьшим значением свойстваReplicalD (оно доступно только для чтения и находится в системной таблице БДMSysReplicas). Если не задавать приоритет во время создания реплики, то поумолчанию создаваемая реплика будет иметь значение приоритета с коэффициентом 0.8 от значения приоритета исходной базы данных (или реплики).1 0 . 1 1 .
Работа с м у л ь т и м е д и а - д а н н ы м иПроблема создания и взаимодействия с мультимедиа-данными в Accessскорее психологическая, нежели техническая. Для пользователей, имеющихопыт работы с С У Б Д предыдущих поколений (к числу которых относятся иавторы), когда не было мультимедиа, непривычно работать с мультимедиаинформацией. Психологический барьер и некоторая неуверенность в действиях — вот одна из основных причин того, что мультимедиа в базах данных неполучило широкого распространения. Возможно, еще одной из причин является то, что использование мультимедиа-данных пока не стало осознаннойнеобходимостью для пользователей.
Не зная всех достоинств мультимедиа,пользователь, естественно, и не пытается их использовать.Для знакомства с мультимедиа в С У Б Д Access воспользуемся одной изготовых демонстрационных БД — «Борей», поставляемой с системами Accessразных версий (аналогичные возможности представляет также учебная базаданных Northwind.mdb).Часть 3. Современные СУБД и их применение348Мультимедиа-информацияв базе данных«Борей»В базе «Борей» мультимедиа-данные содержатся в двух таблицах: С о т р у д (поле Ф о т о г р а ф и я ) и Т и п ы (поле И з о б р а ж е н и е ) .
Поля Фотография иИзображение имеют тип п о л е о б ъ е к т а O L E ( O L E O b j e c t ) . Основными операциями над значениями этих полей являются следующие операции: просмотр,модификация, создание и удаление.1. Просмотр содержимого полей. Просмотреть содержимое полей Фотография и Изображение можно в режиме таблицы или формы. Д л я просмотра содержимого мультимедиа-полей в режиме таблицы достаточновыбрать в окне базы данных нужную таблицу, сделать соответствующееполе текущим (в области поля будет некоторый текст, свидетельствующий о том, что это п о л е о б ъ е к т а O L E , например, такой: Т о ч е ч н ы й р и с у н о к B M P ( B i t m a p I m a g e ) ) и дважды щелкнуть левой кнопкой мыши.Для просмотра содержимого в режиме формы нужно открыть соответствующие экранные формы.
По каждой из таблиц Сотрудники и Типы существуют формы с такими же именами. Открывая экранные формы, можноувидеть содержимое этих же полей. В общем случае это не так, посколькумультимедиа-данные могут быть представлены в форме в виде значков, атакже могут быть заданы некоторые свойства, ограничивающие или запрещающие вывод изображения на экран (такими свойствами являютсязадаваемые в режиме конструктора свойства «Вывод на экран» (Visible) и«Режим вывода» (Display W h e n ) ) . В базе данных «Борей» просмотретьполе И з о б р а ж е н и е формы Т и п ы можно проще — с помощью Главной кнопочной формы.
Для этого достаточно после вызова ее щелкнуть мышьюна кнопке Т и п ы представления этой формы. Если вы следуете приводимым советам, то перейдите к третьей записи формы Т и п ы . В категориинапитков выберите себе приз (чай, кофе или что-нибудь еще), которыйсчитайте наградой за изучение излагаемого здесь материала.ники2. М о д и ф и к а ц и я содержимого мультимедиа-полей. Д л я м о д и ф и к а ц и иизображений, хранящихся в полях ф о т о г р а ф и я и И з о б р а ж е н и е , независимо от режима (таблица, форма), достаточно выбрать нужное поле идважды щелкнуть по нему кнопкой мыши. В результате будет вызванподходящий графический редактор (Paintbrush, Paint) для редактирования изображения.3.Создание значений мультимедиа-полей.
Создать содержимое мультимедиа-поля, как и другого типа, можно несколькими способами. Удобно этосделать следующим образом. Сделать это поле текущим, затем из менюAccess в ы п о л н и т ь к о м а н д у Вставка | Объект (Insert | Object). П о я в л я -ется диалоговое окно вставки объектов (рис. 10.38).В нем предлагается выбрать тип объекта, а также способ его определения: создать объект с помощью соответствующей программы (Audio Recorder, ComicChat Room, Microsoft Graph 5.0 и т. д.) или вставить его готовым из файла.10. СУБД Access 2002349Рис. 10.38. Диалоговое окно вставки OLE-объектовНезависимо от способа определения объекта, существуют два вариантавключения объекта в поле записи базы (задается с помощью ф л а ж к аСвязь (Link)):• п у т е м внедрения исходного объекта в базу данных;• п у т е м связывания (флажок С в я з ь ( L i n k ) включают), когда устанавливается связь между отдельно хранящимся файлом объекта и записью базы данных.Включаемые объекты могут отображаться при просмотре (если, конечно, они отображаются, как, например, рисунки), либо отображаться в видезначков (пиктограмм) или двойным щелчком мыши разворачиватьсяполностью.4.
Удаление значений мультимедиа-полей. Операция удаления значениймультимедиа-полей практически не отличается от удаления значенийобычных полей. Чтобы удалить мультимедиа-поле, нужно сделать еготекущим (клавишами управления курсором, клавишей <ТаЬ>, щелчкомлевой кнопки мыши) и выполнить команду меню П р а в к а | { В ы р е з а т ь ,Удалить} (Edit | {Cut, Delete}).Работас мультимедиа-даннымив БДAccessПосле знакомства с готовой БД, где хранится мультимедиа-информация,сделаем некоторые обобщения.Во-первых, для хранения мультимедиа-данных в базе необходимо в структуре таблиц Б Д иметь поля типа П о л е о б ъ е к т а O L E ( O L E O b j e c t ) .
Вид объекта при этом не уточняется, это значит, что в каждой записи базы данных вЧасть 3. Современные СУБД и их применение350этом поле может находиться свой объект: документ Word, звуковой файл, видеоклип, презентация, анимация, точечный рисунок и т. д.Во-вторых, работать с мультимедиа-информацией можно в режиме таблицы или в режиме формы. Второй вариант предпочтителен, так как предоставляет большие возможности. Заметим, что в Access отчеты обладают практически всеми свойствами экранных форм, поэтому все, что касается форм, вравной мере относится к отчетам.В-третьих, мультимедиа-данные хранятся в базе как встроенные (внедренные), или как связанные объекты.
При этом для каждой отдельной записибазы метод включения данных может быть свой. Объект, внедренный в форму, хранится в файле базы данных. Если изменить такой объект в форме, онизменится в базе данных. Внедренный объект всегда является доступным.При связывании изменения сохраняются в файле объекта, а не в файле базыданных. Файл объекта можно обновлять и независимо с помощью соответствующих приложений. Последние изменения выводятся на экран при следующемобращении к этим данным. Связывание удобно применять при работе с большими файлами, которые нежелательно включать в файл базы данных, а такжес файлами, используемыми в нескольких формах и отчетах.
При перемещениифайлов связанных объектов нужно повторно устанавливать связь с ними.В-четвертых, при разработке экранной формы требуется обратить внимание на следующие свойства мультимедиа-полей:• Т и п в ы в о д а ( D i s p l a y Т у р е ) принимает значения С о д е р ж и м о е ( O L E ) илиЗначок (Icon);• Д о п у с т и м ы й тип OLE (OLE Type Allowed)ный (Linked), В н е д р е н н ы й ( E m b e d d e d )принимает значения С в я з а н и В с е ( E i t h e r ) — допускаетсясвязывание и внедрение;• Д о с т у п ( E n a b l e d ) определяет возможность модификации данных(Да(Yes), Н е т (No)).Напомним, что определение свойств полей происходит в режиме разработки экранных форм.
Простейший способ вызова окна свойств — выбор поляв области формы, нажатие правой кнопки мыши и выбор пункта С в о й с т в а( P r o p e r t i e s ) в контекстном меню. Перечисленные свойства находятся навкладке Д а н н ы е ( D a t a ) окна свойств.Как отмечалось, в экранные формы информация может попадать из независимых источников или из таблиц БД. В справочной системе Access объекты первого вида называются свободными, а объекты второго вида — связанными (по-нашему мнению, не совсем удачно). В обоих случаях она можетвключаться методом внедрения или связывания. Включаемая информацияна экране размещается в пределах рамки, называемой рамкой объекта.В-пятых, в процессе работы с мультимедиа-данными допускается выполнение различных операций: создание, удаление, редактирование, а также ак-10.