Навигация
Главная
Поиск
Форум
FAQ's
Ссылки
Карта сайта
Чат программистов

Статьи
-Delphi
-C/C++
-Turbo Pascal
-Assembler
-Java/JS
-PHP
-Perl
-DHTML
-Prolog
-GPSS
-Сайтостроительство
-CMS: PHP Fusion
-Инвестирование

Файлы
-Для программистов
-Компонеты для Delphi
-Исходники на Delphi
-Исходники на C/C++
-Книги по Delphi
-Книги по С/С++
-Книги по JAVA/JS
-Книги по Basic/VB/.NET
-Книги по PHP/MySQL
-Книги по Assembler
-PHP Fusion MOD'ы
-by Kest
Professional Download System
Реклама
Услуги

Автоматическое добавление статей на сайты на Wordpress, Joomla, DLE
Заказать продвижение сайта
Программа для рисования блок-схем
Инженерный калькулятор онлайн
Таблица сложения онлайн
Популярные статьи
OpenGL и Delphi... 65535
Форум на вашем ... 65535
21 ошибка прогр... 65535
HACK F.A.Q 65535
Бип из системно... 65535
Гостевая книга ... 65535
Invision Power ... 65535
Пример работы с... 65535
Содержание сайт... 65535
ТЕХНОЛОГИИ ДОСТ... 65535
Организация зап... 65535
Вызов хранимых ... 65535
Создание отчето... 65535
Имитационное мо... 65535
Программируемая... 65535
Эмулятор микроп... 65535
Подключение Mic... 65535
Создание потоко... 65535
Приложение «Про... 65535
Оператор выбора... 65535
Реклама
Сейчас на сайте
Гостей: 10
На сайте нет зарегистрированных пользователей

Пользователей: 13,372
новичок: vausoz
Новости
Реклама
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ
Delphi, Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog, 3D MAX, Компас 3D
Заказать программу для Windows Mobile, Symbian

Моделирование регулировочного участка цеха на GPSS + Пояснительная записка
Моделирование ЭВМ на GPSS (три класса заданий) + Пояснительная записка
Метод конечных разностей для интерполяции/экстраполяции на Delphi

ЗАПИСИ БЕЗ КЛЮЧЕЙ
«Билл, похоже, два менеджера зарезервировали один и тот же сервер в нашей лаборатории на одни и те же дни. Как это могло случиться?» С таким вопросом ввалился в мой рабочий кабинет менеджер испытательной лаборатории. «Не можешь ли ты вникнуть в это дело и разрешить недоразумение? Они кричат на меня, заявляя, что им обоим нужно оборудование и что я срываю график выполнения их проекта».
Несколько лет назад я с помощью СУБД MySQL разработал приложение, отслеживающее использование оборудования. Стандартным механизмом хранения для MySQL была система MylSAM, которая не поддерживала ограничения внешнего ключа. База данных содержала много логических взаимосвязей, но не позволяла принудительно установить целостность на уровне ссылок.
В процессе развития проекта и применения новых способов обработки данных возникла проблема: когда целостность на уровне ссылок не обеспечивалась, в отчетах появлялись несоответствия, не согласовывались промежуточные суммы и расписания велись параллельно.
Руководитель проекта попросил меня написать скрипты контроля качества, которые можно было бы периодически исполнять, чтобы узнать, когда возникают несоответствия. Данные скрипты анализировали состояние базы данных, находили ошибки, такие как висячие строки в дочерних таблицах, и отправляли электронные сообщения с отчетами о них.
Эти скрипты должны были проверять все взаимосвязи таблиц. По мере роста объема данных и количества таблиц росло также число запросов контроля качества, и на исполнение скриптов уходило больше времени. Отчеты, отправляемые по электронной почте, также увеличивались в объеме. Наверное, и вам знакома такая ситуация?
Решение на основе скриптов, разумеется, действовало, правда, оно напоминало заново изобретенный дорогостоящий велосипед. Что мне требовалось, так это найти способ вызывать отказ приложения каждый раз, когда пользователем передавались недопустимые данные. Угадайте, что делают ограничения внешнего ключа?
Опубликовал vovan666 June 18 2013 12:25:52 · 0 Комментариев · 3043 Прочтений · Для печати

• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •


Комментарии
Нет комментариев.
Добавить комментарий
Имя:



smiley smiley smiley smiley smiley smiley smiley smiley smiley
Запретить смайлики в комментариях

Введите проверочный код:* =
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.

Нет данных для оценки.
Гость
Имя

Пароль



Вы не зарегистрированны?
Нажмите здесь для регистрации.

Забыли пароль?
Запросите новый здесь.
Поделиться ссылкой
Фолловь меня в Твиттере! • Смотрите канал о путешествияхКак приготовить мидии в тайланде?
Загрузки
Новые загрузки
iChat v.7.0 Final...
iComm v.6.1 - выв...
Visual Studio 200...
CodeGear RAD Stud...
Шаблон для новост...

Случайные загрузки
NotePad Pro [Исхо...
DiZsubmit
Tenis [Исходник н...
WinPopup
Blobs [Исходник н...
Apollovcl61
AVIwriter
FreeSMS v1.3.1
Сложный калькулятор
Карта сайта
Система баннеро...
Программа для рис...
3D Октаэдр
Киллер окон
Trojan [Исходник ...
Применение жадног...
Расширенный загру...
C++ для начинающих
AlnComponents
Midi

Топ загрузок
Приложение Клие... 100793
Delphi 7 Enterp... 98016
Converter AMR<-... 20298
GPSS World Stud... 17059
Borland C++Buil... 14238
Borland Delphi ... 10373
Turbo Pascal fo... 7390
Калькулятор [Ис... 6080
Visual Studio 2... 5228
Microsoft SQL S... 3674
Случайные статьи
Работа с базами да...
Установка маршрути...
Работа с транзакта...
Печать
Программирование: ...
Типовая структура ...
Регистрация в кази...
Функция GetModeNam...
Пример применения ...
10.4. Принцип рез...
Панель управления ...
Демонтаж жидкокрис...
Основные понятия О...
Предварительная об...
Какие маршруты соз...
Операции над матри...
Управление перемещ...
Как избавиться от ...
Скачать приложение...
THEN expected
Произведение и про...
прокси-службу, SID...
Заключение
FileReaderWriter-п...
Датчики давления
Статистика



Друзья сайта
Программы, игры


Полезно
В какую объединенную сеть входит классовая сеть? Суммирование маршрутов Занимают ли таблицы память маршрутизатора?