Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ответы Б_Д (ГОСЫ).doc
Скачиваний:
5
Добавлен:
02.05.2019
Размер:
221.7 Кб
Скачать
  • Реляционной.

    Relation – отношения (таблицы). Понятие реляционной модели связано с разработками известного американского специалиста в области СУБД Эдварда Кодда.

    Достоинства:

    1. Простая структура;

    2. Данные связаны логически;

    3. Группа записей обрабатывается одной командой;

    4. Удобные для пользователя таблицы представления;

    5. Возможность использования формального аппарата алгебры отношений и реляционного исчисления для обработки данных.

    Недостатки:

    Не всегда применима для сложных иерархических и сетевых данных.

    Также БД классифицируются по способу обработки данных: централизованные и распределённые. Централизованные – на одном компьютере. Распределённые – части на разных компьютерах. По способу доступа к данным: с локальным доступом и с сетевым или удалённым доступом.

    16.Основные принципы ооп

    • Инкапсуляция – объекты наделяются некоторой структурой и обладают определенным набором операций (методов).

    • Наследование – возможность создавать из объектов новые объекты, которые унаследуют структуру и поведение своих предшественников, добавляя к ним черты, отражающие их собственную индивидуальность.

    • Полиморфизм - различные объекты могут получать одинаковые сообщения, но реагировать на них по - разному, в соответствии с тем, как реализованы у них методы, реагирующие на сообщения

    17.Свойства и методы объектов dao

    Объект

    Метод

    Свойство

    Database

    Execute, Create Table Def, OpenRecorSet

    Close, Create Query Def

    Name, TableDefs

    QueryDefs

    Query Def

    Execute, Close, Open Record Set

    Records, Affected, Name, SQL

    TableDef

    Create Fields , Open Record Set

    Name, Fields, Record count

    Fields

    Name, Type, Value

    Query Defs

    Append, Delete, Refresh

    Count

    Table Defs

    Append, Delete, Refresh

    Count

    Fields Record Set

    Append, Delete, Refresh

    Count

    Record Set

    Add New, Edit, Delete, Close, Clone, Move Last, Move First, Move Next, Move Previous,Find First, Find Next, Find Last, Find Previous

    EOF, BOF, Record Count

    No Match, Book mark

    18. Объекты ado

    Command предназначен для выполнения запроса к источнику данных

    Свойства:

    Active connection - тип String. Указатель на активный объект connection

    Command text - задается текст исполняемой команды. Может представлять из себя SQL-строку, имя таблицы или имя процедуры.

    Command type – можно задать константы (adcmd text; adcmd table; adcmd proc).

    Execute – выполняется программа на SQL языке с помощью объекта Command.

    Способы создания объекта Recordset в объектной модели ADO.

    1. Execute объекта connection

    2. Execute объекта Command

    3. Метод Open объекта Recordset

    Dim rst as ADODB. Recordset

    Set rst = new ADODB. Recordset

    Свойства:

    • Active connection

    • Sours –

    • Cursor type Recordset ( ad Forward Only, ad Open Dynamic, ad Open key Set, ad Open Static)-определяет тип объекта

    • Lock type (Adlock Read Only, Adlock Optimistic –на время обновления для Update , Adlock Passimistic-во время редактирования)

    19. Процедуры vba

    Программы на VBA хранятся в модулях. Основное содержание модуля – процедуры и функции.

    Public – процедура доступа для других процедур во всех модулях.

    Private – процедура доступа для другой процедуры того модуля, в котором она описана

    Static – указывает, что локальная переменная процедуры сохранена между вызовами процедур.

    [Public/ Private] [Static]

    Sub имя процедуры (список формальных параметров)

    Область описанных переменных

    Блокировка алгоритмов 1

    [Exit Sub]

    Блокировка алгоритмов 2

    End Sub

    Список формальных параметров

    [By ref/By val] [Optional]

    [Param Array] as [=значение по умолчанию]

    20. Функции в vba.

    В VBA существует два вида функций: встроенные и пользовательские.

    Встроенные функции­­ — это функции, которые прилагаются к пакету MS Office и содержатся в VBA. Встроенные функ­ции можно разделить на несколько категорий:

    1. Математические. Они предназначены для вычисления основных математических функций.

      Функция

      Возвращаемое значение

      Abs

      Модуль

      Atn

      Арктангенс

      Cos

      Косинус

      Exp

      Экспонента

      Log

      Натуральный логарифм

      Rnd

      Случайное число. Перед вызовом функции следует использовать инструкцию Randomize

      Sgn

      Знак числа

      Sin

      Синус

      Sqr

      Квадратный корень

      Tan

      Тангенс

      Fix

      Целая часть числа. Для отрицательных аргументов возвращается целое число, большее или равное за­данному

      Int

      Целая часть числа. Для отрицательных аргументов возвращается целое число, меньшее или равное за­данному

    2. Функции проверки типов позволяют определить принадлеж­ность той или иной переменной конкретному типу. Результат логи­ческого типа.

      Функция

      На принадлежность какому типу проверяется

      какому типу проверяется

      IsArray

      Массив

      IsDate

      Дата

      Is Empty

      Описана инструкцией Dim

      IsError

      Код ошибки

      IsNull

      Имеет пустое значение

      IsNumeric

      Числовой тип

      IsObject

      Объект

    3. Функции обработки строк предназначены для работы со строковыми выражениями.

      Функция

      Действие

      Asc(строка)

      Возвращает ASCII-код начальной буквы

      строки

      Chr(код)

      Преобразует ASCII-код в строку

      Lease(строка)

      Преобразует строку к нижнему регистру

      Ucase(строка)

      Преобразует строку к верхнему регистру

      Left(строка, число)

      Возвращает подстроку, состоящую из ука­занного числа первых символов строки

      Right(строка, число)

      Возвращает подстроку, состоящую из ука­занного числа последних символов строки

      Mid(строка, на­чало , длина)

      Возвращает подстроку, состоящую из ука­занного числа символов строки, начиная с заданной позиции

      Len(строка)

      Возвращает длину строки

      I/Trim (строка)

      Возвращает исходную строку без началь­ных пробелов

      RTrim(строка)

      Возвращает исходную строку без конеч­ных пробелов

      Trim(строка)

      Возвращает исходную строку без началь­ных и конечных пробелов

      Space(число)

      Возвращает строку, состоящую из указан­ного числа пробелов

      String(число, символ)

      Возвращает строку, состоящую из указан­ного числа повторений заданного символа

      StrComp(строка1, строка2 [, вари­ант])

      Сравнивает две строки. Вариант равен 0, если идет двоичное сравнение, равен 1 — при посимвольном сравнении без учета регистра. Если строка! меньше строки!. возвращается значение -1-0 — если стро­ки равны, 1 — в оставшемся случае.

      InStr([начало,] строка1, стро­ка2 [, вариант])

      Возвращает позицию первого вхождения строки 1 в строку2. Поиск начинается с указанной позиции. Если аргумент начало опущен, поиск идет с первой позиции.

    4. Функции времени и даты.

    Функция

    Действие

    Date

    Возвращает текущую дату

    Time

    Возвращает текущее время

    Функция

    Действие

    Now

    Возвращает текущие дату и время

    Hour

    Выделяет значение часов из данных типа время

    Minute

    Выделяет значение минут из данных типа время

    Second

    Выделяет значение секунд из данных типа время

    Day

    Выделяет числовое значение дня из данных типа даты

    Month

    Выделяет числовое значение месяца из данных типа даты

    Year

    Выделяет числовое значение года из данных типа даты

    Weekday

    Выделяет числовое значение дня недели из данных типа даты

    Timer

    Возвращает число секунд, прошедших с начала суток

    DateDiff

    Возвращает число временных интервалов меж­ду двумя датами

    DatePart

    Выделяет из даты указанный временной ин­тервал

    DateAdd

    Возвращает дату, к которой добавлен указан­ный временной интервал

    TimeSerial

    Формирует время по указанным часам, мину­там и секундам

    DateSerial

    Формирует дату по указанному дню, месяцу и году

    TimeValue

    Преобразует строку в формат времени

    21.Формальные и фактические параметры в процедурах и функциях

    Хранимые процедуры – именованный набор команд на транзакт SQL, хранящихся на сервере и представляет самостоятельный объект БД. ХП хранятся в предварительно откомпилированном виде, поэтому эффективность их выполнения выше, чем у обычных запросов. При выполнении ХП процедуры в 1 раз выполняются в 5 шагов следующего алгоритма:

    1. происходит лексический и синтаксический анализ запроса. В результате выполнения 1 шага процедура разобьется на отдельные компоненты.

    2. Компоненты сопоставляются с реальными объектами (таблицы, запросы). Разрешение внешних ссылок.

    3. В системной таблице (Sysobjects) заполняется имя процедуры. Тип: Р.А. в системной таблице (Sys comments) в поле text заполняется текст процедуры.

    4. Создается предварительный план выполнения запроса, сохраняется в системной таблице Sys PROCEDURES

    5. при первом выполнении ХП дерево запроса считывается и окончательно оптимизируется.

    При повторном вводе выполняется ранее созданный план процедуры. При повторении вызова выполняется только 5 шаг алгоритма.

    Преимущество использования ХП по сравнению с обычными запросами.

    • Повышается скорость (из-за откомпилированного вида)

    • План выполнения процедуры сохраняется в быстродействующем КЕШе, поэтому при повторном вызове она берется из КЕШа. (Скорость повышается)

    • Уменьшается нагрузка на сеть (передача имя процедуры и список, а выполнение происходит только на сервере)

    • Использование ХП реализует принцип модульного проектирования, т.к. процедура позволяет разбивать задачи на самостоятельные части более удобные в управлении.

    Типы ХП.

    1. Системные ХП - предназначены для выполнения административных функций.

    2. Пользовательские хранятся, как отдельный объект.

    3. Глобальные и локальные

    Создание хп

    Create Proc [edure] имя процедуры [: номер]

    [{@ параметр, тип}}[varung] [:default] [output]]

    [,…]

    [with Recompile/ Encryption/ [with Recompile, Encryption]]

    As SQL – Statement …

    Varung – если курсор возвращается в виде выходного параметра

    Процедура без параметров

    USE pubs

    IF EXISTS (SELECT name FROM sysobjects

    WHERE name = 'au_info_all' AND type = 'P')

    DROP PROCEDURE au_info_all

    GO

    CREATE PROCEDURE au_info_all

    AS

    SELECT au_lname, au_fname, title, pub_name

    FROM authors a INNER JOIN titleauthor ta

    ON a.au_id = ta.au_id INNER JOIN titles t

    ON t.title_id = ta.title_id INNER JOIN publishers p

    ON t.pub_id = p.pub_id

    GO

    Выполнение процедуры

    EXECUTE au_info_all или EXEC au_info_all

    Процедура с входным параметром

    USE pubs

    IF EXISTS (SELECT name FROM sysobjects

    WHERE name = 'au_info' AND type = 'P')

    DROP PROCEDURE au_info

    GO

    USE pubs

    GO

    CREATE PROCEDURE au_info

    @lastname varchar(40),

    @firstname varchar(20)

    AS

    SELECT au_lname, au_fname, title, pub_name

    FROM authors a INNER JOIN titleauthor ta

    ON a.au_id = ta.au_id INNER JOIN titles t

    ON t.title_id = ta.title_id INNER JOIN publishers p

    ON t.pub_id = p.pub_id

    WHERE au_fname = @firstname

    AND au_lname = @lastname

    GO

    Выполнение процедуры с параметрами

    EXECUTE au_info 'Dull', 'Ann'

    -- Or

    EXECUTE au_info @lastname = 'Dull', @firstname = 'Ann'

    Процедура с выходным параметром

    USE pubs

    GO

    IF EXISTS(SELECT name FROM sysobjects

    WHERE name = 'titles_sum' AND type = 'P')

    DROP PROCEDURE titles_sum

    GO

    USE pubs

    GO

    CREATE PROCEDURE titles_sum @@TITLE varchar(40) = '%', @@SUM money OUTPUT

    AS

    SELECT 'Title Name' = title

    FROM titles

    WHERE title LIKE @@TITLE

    SELECT @@SUM = SUM(price)

    FROM titles

    WHERE title LIKE @@TITLE

    GO

    Имя параметра не должно совпадать с именем переменной, однако тип и положение переменной должно соответствовать типу и положению параметра

    Выполнение процедуры и использование значения выходного параметра

    DECLARE @@TOTALCOST money

    EXECUTE titles_sum 'The%', @@TOTALCOST OUTPUT

    IF @@TOTALCOST < 200

    BEGIN

    PRINT ' '

    PRINT 'All of these titles can be purchased for less than $200.'

    END

    ELSE

    SELECT 'The total cost of these titles is $'

    + RTRIM(CAST(@@TOTALCOST AS varchar(20)))

    22. Создание, удаление таблиц, ввод данных в таблицу на sql языке.

    Создание таблицы

    Create table имя_таблицы

    ({<определение_столбца><определение_ограничения_таблицы>}[,…,{< определение_столбца >< определение_ограничения_таблицы >}])

    Ограничение целостности – это максимум, обеспечивающий контроль данных, установленным условиям.

    Виды ограничений:

    Null / Not Null – ключевые слова, разрешающие (Null) или запрещающие (Not Null) хранение в столбце значений Null

    Default – значение по умолчанию

    CHECK – логическое условие

    Primary key - определение первичного ключа на уровне одного столбца

    Unique – ограничение целостности (уникальность каждого значения и не пустые)

    Identity – начальное значение [, смещение]

    Foreign key – внешний ключ

    Синтаксис:

    < определение_ таблицы > ::= [CONSTRAINT <имя _ограничения >]

    {[{ Primary keyUnique }

    {(<имя_колонки>[ASCDESC][,…,n])}]

     Foreign key

    [(<имя_колонки>[,…, n])]

    Referenses <Внешняя_таблица>[(<имя_колонки_внешней_таблицы>[,…, n])]

    [on delete {cascade no action}]

    [on update {cascade no action}]

     check (<логическое_выражение>)

    }

    Ввод данных в табл.

    Alter table предназначена для модификации структуры таблицы.

    Синтаксис:

    Alter table <имя_таблицы>

    [Alter Column <имя_столбца> [Set Default <выражение>]

    [Drop Default]]

    [ADD <определение_столбца>]

    [Drop Column < имя_столбца > [cascade][RESTRICT]

    [ADD < определение_первичного_ключа >][< определение_внешнего_ключа >]

    [< условие_уникальности >][<условие_на_значение>]]

    [ Drop constaint < имя_ограничения>[ cascade] [RESTRICT]]

    Alter table берет на себя все действия по копированию данных во временную таблицу, удалению старой таблицы, созданию вместо нее новой таблицы с нужной структурой и последующим переписыванием в нее данных.

    23. Создание объекта Record Set. Его типы.

    Dim db us Database

    Dim rst as Dao. Record Set

    Dim rst=db.Open Record Set

    ([источник [,тип][,параметры]][,блокировка])

    Источники:

    • Имя таблицы

    • Имя запроса

    • Оператор Select

    Типы:

    • Таблица db.OpenTable

    • Динамические db.OpenDynaset

    • Статистические db.OpenSnapShot

    • Статистические db.OpenFor word Only

    1→n

    Record Set типа таблицы позволяет работать только с 1 таблицей.

    «+»: - параллельное изменение.

    «-»: - название работы только с одной таблицей.

    - нельзя использовать метод Find

    Динамический объект Record Set представляет группу данных из одной или нескольких таблиц.

    «+»: - использование нескольких таблиц

      • можно выбрать нужные поля из таблицы и записи по заданному критерию (Where) и сортировке (Order by)

      • Объединяет записи из нескольких таблиц

      • Можно использовать метод Find

      • Позволяет ограничить число полей или записей, отбираемых в набор

      • Можно использовать сортировку

    «-»: - Не отслеживается добавление или удаление записей другими пользователями.

    Статистический объект такой же как динамический, только не обновляется.

    24. Создание и выполнение запросов средствами vba.

    25. Свойства объекта Record Set.

    BOF {true/false}

    EOF

    Свойство BOF возвращает значение true, если указатель текущей записи расположен перед первой записью набора данных и значение false в противном случае.

    Свойство EOF возвращает значение true, если указатель текущей записи расположен после последней записи и значение false в противном случае.

    Свойство объекта Record Count

    Возвращает число записей в объекте Record Set

    Примечание:

    Перед использованием этого свойства нужно применить метод Move Last. В противном случае это свойство выдает неправильное значение.

    Свойство Absolute Position

    rst Absolute Position = n

    позволяет перейти в набор данных к определенной записи от 0 до Record Count -1

    Свойство No match {true/false}

    Используется для поверки того, найдена ли запись, отвечающая заданному критерию в методах

    {Find First / Find Next/ Find Previous/Find Last}

    {true – запись не найдена / false – запись найдена}

    26. Методы объекта Record Set

    1. Метод Add New

    С помощью этого метода в набор данных можно добавить новую запись. Чтобы запись сохранилась нужно применить метод Update. До метода Update изменения в базу данных не заносятся.

    1. Метод Delete

    С помощью этого метода можно удалить текущую запись в объекте Record Set.

    1. Метод Edit

    С помощью метода Edit можно редактировать текущую запись в обновленном объекте Record Set.

    Чтобы сохранить изменения нужно вызвать метод Update.

    1. Метод Clone

    С помощью этого метода можно сделать копию объекта Record Set.

    1. Метод Close

    Закрывает объект и удаляет его из памяти

    1. Методы Find

    {Find First / Find Next/ Find Previous/Find Last}

    объект Find First критерий

    Пример: rst. Find First «Фамилия = ‘Иванов’»

    Для проверки того найдена ли запись, отвечающая заданному критерию, используя свойства No match

    {true – запись не найдена / false – запись найдена}

    Метод Move объекта Record Set

    Перемещение по объекту Record Set осуществляется с помощью метода Move.

    {Move First / Move Next/ Move Previous/ Move Last}

    С помощью этого метода можно сместиться от текущей записи на заданное число записей

    n - положительное - вперед

    n – отрицательное – назад

    При открытии объекта Record Set указатель стоит на первой записи, если число записей ≥ 1

    27. Основные элементы управления в ms access, их свойства, методы и события

    Все программы под Windows имеют 2 составляющие:

    • Визуальную (формы, элементы управления. Элементы управления VB разработаны для решения задач)

    • Программную (процедуры обработки событий)

    Основные элементы управления

    Название

    Графическое обозначение

    Функции

    Префикс

    Label

    А

    Отображает текст

    lbl

    TextBox

    ab

    Позволяет вводить или отображать текст в текстовом поле

    txt

    Command button

    Начало каких-то действий

    cmd

    Option button

    Позволяет выбрать одно из двух состояний true/false

    optb

    CheckBox

    ٧

    Для реализации функции выбора

    chk

    ListBox

    Используется для выбора одного или нескольких значений

    lst

    Option Group

    Является контейнером

    optg

    Общие свойства элементов управления:

    Click –возникает при щелчке по объекту, когда объект имеет фокус.

    dbl Click – возникает при двойном щелчке.

    Key Down – возникает при нажатии клавиши, когда объект имеет фокус

    Key Prese – при нажатии и отпускании

    Mouse Down – когда объект имеет фокус

    Mouse Up – возникает при отсутствии, при перемещении

    Mouse Move – при перемещении курсора через объект

    Key up

    Drag Drop

    Got Focus

    28. Понятие объекта, его свойств, методов и событий в ооп

    • Инкапсуляция – обеспечивает «логическую независимость данных»: можно изменить реализацию типа, не имея каких либо программ, использующих этот тип.

    • Типы и классы – классы используются не для проверки правильности программы, а скорее для создания и манипулирования объектами. В большинстве систем классами можно манипулировать во время выполнения, т.е. изменять их и передавать как параметры.

    • Иерархии классов и типов – наследование обладает двумя положительными достоинствами: во-первых, оно является мощным средством моделирования, поскольку обеспечивает возможность краткого и точного описания предметной области. Во – вторых, эта возможность помогает факторизовать спецификации и реализации, совместно используемые в приложениях.

    • Расширяемость – Система БД поставляется с набором предопределенных типов, но этот набор должен быть расширяемым.

    • Стабильность – означает возможность обеспечить сохранность данных после завершения выполнения одного процесса для последующего использования в другом процессе.

    • Восстановление – возвращение к некоторому согласованному состоянию данных.

    • Параллелизм – система должна поддерживать стандартные понятие атомарности последовательности операций и управляемого совместного доступа.

    29. Методика создания приложений средствами ms access и vba

    Application – приложение, работающее с БД.

    Методика создания приложения

    • Прогнозировать постановку задачи

    • Создать новую БД

    • Спроектировать объекты БД

    • Разработать графический интерфейс

    • Написать модуль на VBA

    • Отладить и протестировать приложение

    Проектирование любой БД начинается с предметной области и заканчивается концептуальной схемой БД. После анализа предметной области мы выбираем информационные объекты (например, таблицы).

    30. Доступ к данным средствами ado

    Error(s)

    Connection

    Command

    Parameter(s)

    Recordset(s)

    Field(s)

    ADO объектно-ориентированный интерфейс разработки приложений, использующих OLE DB.

    OLE DB – низкоуровневый интерфейс

    ADO – программный интерфейс высокого уровня, упрощающий работу с данными

    Объект Connection обеспечивает связь с источником данных

    Объект Command определяет исполняемую команду

    Parameters – семейство объектов, каждое из которых представляет параметр команды на SQL языке.

    Recordset

    Fields – отдельное поле в объекте Recordset

    Error(s) – Все объекты в этом семействе создаются в ответ на ошибку, произошедшую во время сеанса связи с источником данных.

    Объект Connection

    Connection String – переменная типа String, с помощью которого определяется определенная информация для провайдера открывающего соединение

    Методы:

    Open – открытие сеанса связи с источником данных

    Close - закрытие сеанса связи с источником данных

    Execute – может возвращать набор записей, определяемый командой Select или используется для выполнения команд Update, Delete, Insert Into и.т.д.

    Execute (Command text [ ,Recordset, Affected [ ,options]] )

    adcmd text – первый параметр интерпретируется, как исполняемая команда

    adcmd table – как имя таблицы будет сгенерирован запрос Select