- •Введение.
- •Лекция1.Введениевклиент-серверныеСубд.
- •InterbaseSqlServer.Общиесведения.
- •Платформы
- •Типыприложений
- •ФайлыбазыданныхInterBase
- •Лекция3.Триггерыихранимыепроцедуры
- •Хранимыепроцедуры(StoredProcedures)
- •Терминаторы
- •Заголовок
- •Телопроцедуры
- •Блоккодапроцедуры
- •Операторприсваивания
- •УсловныйоператорIf…then…else
- •ОператорSelect
- •ЦиклForselecTиSuspend
- •ЦиклWhile…do
- •ОператорыInsert,update,delete
- •ОператорExecuteprocedure
- •Исключения
- •СобытияиоператорPost_event
- •Измененияиудаленияхранимыхпроцедур
- •Примерысозданияивызовахранимыхпроцедур
- •Генераторы
- •Увеличениешагагенератора
- •Триггеры
- •ПеременныеNeWиOld
- •Реализацияавтоинкрементныхключевыхполей
- •Лекция4.Транзакции.Механизмтранзакций
- •Атомарность(Atomicity)
- •Согласованность(Consistency)
- •Изолированность(Isolation)
- •Устойчивость(Durability)
- •Неявныйиявныйстарттранзакций
- •Кактранзакцияработает
- •Уровниизолированноститранзакций
- •Параметрытранзакций
- •Компонентыдоступакданнымивизуальныекомпоненты МеханизмыдоступакБд
- •ПроблемырусскихбукввInterBase
- •Лекция5. Основы языка php. Функции php для работы с субд ИсторияPhp
- •ВозможностиPhp
- •Основнойсинтаксис
- •Разделениеинструкций
- •Комментарии
- •Переменные,константыиоператоры
- •Переменные
- •Константы
- •Операторы
- •Типыданных
- •Типboolean(булевилилогическийтип)
- •Типinteger(целые)
- •Типfloat(числасплавающейточкой)
- •Типstring(строки)
- •Одинарныекавычки
- •Двойныекавычки
- •Типarray(массив)
- •Определениеприпомощиarray()
- •Определениеспомощьюсинтаксисаквадратныхскобок
- •Типobject(объекты)
- •Типresource(ресурсы)
- •Решениезадачи
- •Построениеинтерфейсадлядобавленияинформации
- •Установкасоединения
- •Выборбазыданных
- •Получениеспискаполейтаблицы
- •Отображениеспискаполейвhtml-форму
- •Записьданныхвбазуданных
- •Отображениеданных,хранящихсявMySql
- •Заключение
ФайлыбазыданныхInterBase
Вседанные,которыепользователи"помещают"вбазу,используялюбойинструментизмножестваприменяемыхдляэтойцепи"складируются"серверомвнекуюсущность-базданных.ОбычноподбазойданныхпонимаетсяисамсерверСУБД,ипользовательскаяинформация,идажеклиентскиепрограммы,которыеработаютсданными.Мыбудемпониматьподбазойданныхсовершенноконкретнуювещь-файлыбазыданных.
БазаданныхInterBaseпредставляетсобойодинилинесколькофайлов,вкоторыхнаходитсяинформацияобовсем,чтосвязаносэтойбазой.Исключениесоставляетинформацияопользователях,посколькупользователиопределяютсянауровневсегосервераихранятсяотдельно,всистемнойбазеданныхISC4.GDB(Security.fdb).Внутрифайловбазыданныхсодержитсявсяинформацияобазе:самиданные,индексы,триггеры,хранимыепроцедурыит.д.
БазаданныхInterBaseдлясреднегопроектапредставляетсобойодинфайл,таккакограничениев32Гбайтанаразмеродногофайлабазыданныхпозволяетдержатьвседанныеводномфайле(версиинижеInterBase6.5,Firebird1.0иYaffil1.0имеютограничениев2-4Гбайт,взависимостиотОС).32гигабайтвполнехватаетдляхраненияинформацииприложениябазданныхсреднегоразмера.Нопринеобходимостиможноразбитьбазуданныхнанесколькофайлов.ИзвестныбазыданныхInterBaseразмеромвсотнигигабайт.
GDB(FDB)-эторасширение,котороерекомендуютиспользовавдляфайловбазданныхInterBase(FireBird).Первое,чтонужносказатьостроенииGDB-файла,-этото,чтоонпредставляетсобойнаборстраницжесткоопределенногоразмера.Размерфайлабазыданныхкратенразмерустраницы,которыйнеизменендлявсехфайловданнойбазыданных.РазныеверсииInterBaseподдерживаютразличныеразмерыстраниц,чтоотраженовтаблице1.Размерстраницызадаетсяприсозданиибазыданныхинеможетбытьизмененвтечениееежизненногоцикла,т.е.изменитьразмерстраницывозможнотолькоприсозданиибазыизрезервнойкопии(restore).
Таблица1.Размерстраницы,поддерживаемыйразличнымиверсиями
ВерсияInterBase
|
Размерстраницы,байт |
||||
1024 |
2048 |
4096 |
8192 |
16384 |
|
InterBase4 |
* |
* |
* |
* |
|
InterBase5.x |
* |
* |
* |
* |
|
InterBase6.0x |
* |
* |
* |
* |
|
FirebirdIx/Yaffl1.x/InterBase6.5ивыше |
* |
* |
* |
* |
* |
Чтениеизаписьданныхвбазеданныхосуществляетсяпостранично,имногиеважныехарактеристикибазыданныхисервера,такие,например,какразмербуферабазыданных(Databasecache),зависятотразмерастраницыиисчисляютсяв"страницах".
Лекция3.Триггерыихранимыепроцедуры
Хранимыепроцедурыитриггеры,окоторыхуженеоднократноупоминалосьвпредыдущихлекциях,являютсяоднимиизсамыхмощныхсредствInterBaseдляреализациибизнес-логикинасторонесервера.Использованиеэтихинструментовприводитк:
ускорениювыполнениязапросовиснижениюнагрузкинасеть;
повышениюбезопасностиБД,снижениюрискаошибок;
централизацииобработкиданных(дополнитьилиисправитьправиланужнотольконасервере);
уменьшениюиупрощениюкодаклиентскихприложений,работающихссерверомInterBase.
Хранимыепроцедуры,какитриггеры,типичнытолькодляклиент-серверныхбазданных.Ите,идругиеиспользуютспециальныйалгоритмическийязык.Отриггерахмыпоговоримнаследующейлекции,асейчасизучимхранимыепроцедурыиалгоритмическийязык,общийидлятриггеров,идляхранимыхпроцедур.