- •Управление распределёнными данными: технологии управления, блокировка ресурсов, сериализуемые транзакции.
- •Привилегии на доступ к таблице, полю таблицы, к хранимой процедуре. Отмена привилегий.
- •Модели бд. Понятие локальной сети, сервера, рабочей станции. Отличия и преимущества удалённых баз данных от локальных.
- •Назначение и виды отчётов. Мастер отчётов и Конструктор отчётов. Настройка печати и печать отчётов. Компоненты формирования отчётов.
- •Создайте запрос, позволяющий получить список служебных телефонов всех работников предприятия со всей необходимой информацией. Билет №8
- •Архитектура приложений баз данных.
- •Понятие и назначение транзакции. Старт, фиксация, откат и отмена транзакции. Компоненты для работы с транзакциями.
- •Создайте хранимую процедуру, определяющую список заказчиков из города, название которого задаётся параметром, из тестовой таблицы Customers. Билет №10
- •Создание запросов с использованием агрегатных функций. Группировка.
- •Соединение с сервером и базой данных в InterBase.
- •Напишите триггер, который при удалении названия фирмы в родительской таблице «Фирмы», удаляет подчинённые записи в дочерней таблице «Заказы». Билет №11
- •Основные функции процессора баз данных bde, стандарт odbc.
- •Понятие и назначение хранимой процедуры, триггера и генератора. Команды по созданию, редактированию и удалению хранимой процедуры, триггера
- •Создайте хранимую процедуру, определяющую страну с самым большим населением по тестовой таблице Country. Билет №12
- •Концепция баз данных. Понятия баз данных, субд. Архитектура субд.
- •Полный и сокращённый форматы оператора добавления, редактирования и удаления данных. Методы выполнения операторов управления данных.
- •Создайте хранимую процедуру, позволяющую вводить новую запись в таблицу. Билет №13
- •Утилиты для работы с удаленными бд в Delphi. Программа Server Manager Windows isql, sql Explorer. Просмотры — Views.
- •Проектирование серверной части приложения баз данных.
- •Показать работу с параметризированным запросом в ibQuery на примере таблиц из тестовой бд employee.Gdb. Билет №14
- •Назначение и структура файлов базы данных. Команды по созданию и перемещению файла базы данных, по определению структуры и администрированию базы данных.
- •Показать работу с основными компонентами InterBase: ibDataBase, ibDataSet, ibTransaction, ibQuery на примере тестовой базы данных. Билет №15
- •Назначение и структура файлов базы данных. Команды по созданию и перемещению файла базы данных, по определению структуры и администрированию базы данных.
- •Параметризированные запросы.
- •Создайте автоинкрементные поля для таблиц «Товары», «Поставщики», используя генераторы и триггеры.
- •Запросы на создание, изменение, удаление таблиц, индексов.
- •2.1.3. Ручная настройка Query
- •1. Создание запросов на изменение данных
- •10.2 Создание баз данных с помощью Database Desktop
- •10.2.1 Создание новой таблицы
- •10.2.2 Задание полей
- •10.3.2 Создание и просмотр псевдонимов баз данных в Database Desktop
- •10.10 Приложения с несколькими связанными таблицами
- •10.10.1 Связь головной и вспомогательной таблиц
- •10.10.2 Поля просмотра (lookup fields)
-
Запросы на создание, изменение, удаление таблиц, индексов.
Ответ:
Создание новой таблицы осуществляется оператором Create Table:
CREATE TABLE <имя таблицы> (<список вида <имя поля> <тип>(<размер>)>)
Удаление таблицы осуществляется оператором Drop Table:
DROP TABLE <имя таблицы>
Надо учесть, что удаление таблицы в корне отличается от удаления в ней всех записей. При удалении даже всех записей сама таблица (ее структура) остается, а оператор Drop Table полностью уничтожает таблицу.
Изменения структуры существующей таблицы осуществляется оператором Alter Table:
ALTER TABLE <имя таблицы> <действие> <имя поля> <тип данных> ...
В этом операторе <действие> может принимать значения ADD — добавить новое поле, или DROP — удалить существующее поле. Если поле добавляется, то для него надо указывать <тип данных>. Если поле удаляется, то тип данных не указывается. Приведем пример оператора изменения структуры:
ALTER TABLE Pers DROP Year_b, ADD Age integer
Вставка новой записи в таблицу осуществляется оператором Insert, который может иметь вид:
INSERT INTO <имя таблицы> (<список полей>) VALUES («список значений>)
Редактирование записей осуществляется оператором Update:
UPDATE <имя таблицы> SET <список вида <поле>=<выражение> WHERE <условие>
Наличие в этом операторе условия позволяет редактировать не только одну запись, но сразу множество их. Например, если при очередной реорганизации предприятия решили слить «Цех 1» и «Цех 2» в один «Цех 1», то исправление всех записей в таблице можно сделать одним оператором:
UPDATE Pers SET Dep = 'Цех 1' WHERE Dep = 'Цех 2' Удаление записей осуществляется оператором Delete:
DELETE FROM <имя таблицы> WHERE <условие>
Наличие в операторе условия позволяет удалять не только одну, но сразу множество записей. Например, если при реорганизации предприятия подразделение «Цех 1» ликвидировали и всех его сотрудников уволили из штата данной организации, то удалить из таблицы все соответствующие записи можно оператором:
DELETE FROM Pers WHERE Dep = 'Цех 1'
Создание нового индекса осуществляется оператором Create Index:
CREATE INDEX <имя индекса> ON <имя таблицы > <список полей> Например:
CREATE INDEX depyear ON Pers Dep, Year_b '
Удаление существующего индекса осуществляется оператором Drop Index:
DROP INDEX <имя таблицы >.<имя индекса> Например:
DROP Index Pers.depyear
2.
Билет 21
2. Запросы на создание, изменение, удаление таблиц, индексов.
Ответ:
Создание новой таблицы осуществляется оператором Create Table:
CREATE TABLE <имя таблицы> (<список вида <имя поля> <тип>(<размер>)>)
Удаление таблицы осуществляется оператором Drop Table:
DROP TABLE <имя таблицы>
Надо учесть, что удаление таблицы в корне отличается от удаления в ней всех записей. При удалении даже всех записей сама таблица (ее структура) остается, а оператор Drop Table полностью уничтожает таблицу.
Изменения структуры существующей таблицы осуществляется оператором Alter Table:
ALTER TABLE <имя таблицы> <действие> <имя поля> <тип данных> ...
В этом операторе <действие> может принимать значения ADD — добавить новое поле, или DROP — удалить существующее поле. Если поле добавляется, то для него надо указывать <тип данных>. Если поле удаляется, то тип данных не указывается. Приведем пример оператора изменения структуры:
ALTER TABLE Pers DROP Year_b, ADD Age integer
Вставка новой записи в таблицу осуществляется оператором Insert, который может иметь вид:
INSERT INTO <имя таблицы> (<список полей>) VALUES («список значений>)
Редактирование записей осуществляется оператором Update:
UPDATE <имя таблицы> SET <список вида <поле>=<выражение> WHERE <условие>
Наличие в этом операторе условия позволяет редактировать не только одну запись, но сразу множество их. Например, если при очередной реорганизации предприятия решили слить «Цех 1» и «Цех 2» в один «Цех 1», то исправление всех записей в таблице можно сделать одним оператором:
UPDATE Pers SET Dep = 'Цех 1' WHERE Dep = 'Цех 2' Удаление записей осуществляется оператором Delete:
DELETE FROM <имя таблицы> WHERE <условие>
Наличие в операторе условия позволяет удалять не только одну, но сразу множество записей. Например, если при реорганизации предприятия подразделение «Цех 1» ликвидировали и всех его сотрудников уволили из штата данной организации, то удалить из таблицы все соответствующие записи можно оператором:
DELETE FROM Pers WHERE Dep = 'Цех 1'
Создание нового индекса осуществляется оператором Create Index:
CREATE INDEX <имя индекса> ON <имя таблицы > <список полей> Например:
CREATE INDEX depyear ON Pers Dep, Year_b '
Удаление существующего индекса осуществляется оператором Drop Index:
DROP INDEX <имя таблицы >.<имя индекса> Например:
DROP Index Pers.depyear
Билет 23.
1. Основы работы с компонентом Query.
Ответ:
Исходя из этого краткого обзора возможностей Table и Query, можно заключить, что в серверных приложениях обычно целесообразнее использовать компонент Query, а при работе с локальными базами данных — компонент Table.
Чтобы ознакомиться с Query, откройте в Delphi новое приложение и поместите на форму компоненты Query, DataSource, DBGrid. В свойстве DataSet компонента DataSourcel задайте Queryl, а в свойстве DataSource компонента DBGridl задайте DataSourcel. Таким образом, мы создали обычную цепочку: набор данных (Queryl), источник данных (DataSourcel), компонент визуализации и управления данными (DBGridl). А теперь займемся интересующим нас компонентом Query.
Основное свойство компонента Query — SQL, имеющее тип TString. Это список строк, содержащих запросы SQL. В процессе проектирования приложения обычно необходимо, как будет показано ниже, сформировать в этом свойстве некоторый предварительный запрос SQL, который показал бы, с какой таблицей или таблицами будет проводиться работа. Но далее во время выполнения приложения свойство SQL может формироваться программно методами, обычными для класса TString: Clear — очистка, Add — добавление строки и т.д.
Настройку компонента Query в процессе проектирования можно производить вручную, как это делается со всеми компонентами, или с помощью специального Визуального Построителя Запросов.