- •Понятие автоматизированной системы, автоматизированного банка данных (абд). Состав и роли пользователей абд.
- •Иерархическая модель данных.
- •Сетевая модель данных.
- •Реляционная модель данных. Понятие домена, отношения, атрибута, кортежа, арности отношения реляционной базы данных.
- •Структура данных в рбд. Свойства столбца и ограничения таблицы. Использование ключей для идентификации строк, ссылочной целостности и логической связи строк. Индексы таблиц.
- •Язык запросов к рбд, основанный на реляционном исчислении. Примеры запросов.
- •Язык запросов к рбд, основанный на реляционной алгебре, примеры запросов.
- •Назначение и общая структура оператора Select в sql. Общая схема выполнения оператора Select. Примеры.
- •Элементы списка вывода в операторе Select Transact sql. Назначение и использование параметра Order by. Примеры.
- •Типы табличных источников в операторах управления данными в sql. Способы соединения строк в параметре From. Примеры соединений.
- •Критерий отбора строк в параметре Where операторов sql. Примеры фильтрующих запросов.
- •Назначение и использование агрегатных функций, параметров Group by и Having оператора Select. Примеры группирующих запросов.
- •Операторы union [all] , except, intersect. Примеры.
- •Структура, назначение параметров и примеры использования оператора insert. Примеры применения.
- •Структура, назначение параметров и примеры использования операторов delete, truncate.
- •Структура, назначение параметров и примеры применения оператора update.
- •Организация ms sql Server: режимы использования сервера и поддерживающие их службы Windows, системные базы, исходные учетные записи сервера.
- •Правила именования постоянных и временных объектов баз данных в ms sql Server. Примеры.
- •Структурные операторы Transact sql: if, go to, while, waitfor. Примеры применения.
- •Обработка исключений в программах Transact sql. Функции для анализа причины исключений и вывода сообщений.
- •Логическая организация базы данных в ms sql Server: словарь (системные таблицы и системные представления) базы master и пользовательской бд. Типы объектов пользовательской базы.
- •Физическая организация базы данных в ms sql Server: файлы и файловые группы. Структура и параметры оператора create database.
- •26.. Изменение параметров базы оператором alter. Реорганизация базы данных командой dbcc.
- •27.. Опции базы данных. Способы задания и проверки опций базы. Процедуры отсоединения и присоединения баз данных к серверу.
- •28.. Базовые типы данных в ms sql Server
- •29.. Специальные типы данных в ms sql Server. Функции приведения значения выражения к требуемому типу. Примеры.
- •30.. Пользовательские типы данных в ms sql Server. Операторы создания и удаления. Примеры создания и применения.
- •31. Создание пользовательской таблицы оператором create table: параметры, определяющие структуру, свойства столбцов и ограничения таблицы.
- •32.. Фрагментарное размещение таблицы в файловых группах: использование схем и функций размещения для таблицы бд. Модификация структуры таблицы оператором alter table. Примеры.
- •33.. Индексы таблиц в ms sql Server: назначение, типы, способы создания. Использование индексов.
- •34.. Статистика столбцов и индексная статистика. Операторы создания обновления статистики.
- •35.. Правила и умолчания в Transact sql. Примеры создания и использования.
- •36.. Представление (view) базы данных. Операторы создания и удаления представлений. Примеры. Ограничения при использовании представлений для внесения изменений в бд.
- •37.. Хранимые процедуры базы данных. Операторы Transact-sql для создания, исполнения и модификации процедур. Пример создания и использования.
26.. Изменение параметров базы оператором alter. Реорганизация базы данных командой dbcc.
«Изменение» базы данных означает лишь добавление к существующей базе данных вторичных файлов. База данных должна быть открытой. Для изменения используется оператор ALTER DATABASE. Его синтаксис:
ALTER { DATABASE | SCHEMA }
<предложение ADD >
<предложение ADD > = ADD FILE '<спецификация файла>'
[LENGTH [=] < целое > [PAGE[S]] | STARTING [AT [PAGE]] < целое >] < предложение ADD>]
Здесь, как и при создании базы данных, все вторичные файлы должны располагаться на том же компьютере в сети, что и первичный файл базы данных. Они также могут размещаться на различных дисковых устройствах.
Опять же следует напомнить, что в именах файлов нельзя использовать буквы кириллицы.
Изменение объектов
В то время как оператор CREATE создает новый объект, оператор ALTER предоставляет механизм для изменения определения объекта. Не все объекты, созданные с помощью оператора CREATE, имеют соответствующий оператор ALTER.
Операторы ALTER Синтаксис оператора ALTER Действие
ALTER DATABASE <имя> <спецификация_файла> Изменяет файлы, используемые для хранения базы данных
ALTER FUNCTION <имя> RETURNS <возвращаемое_значение> AS < операторы_tsql> Изменяет операторы Transact-SQL, содержащие функцию
ALTER PROCEDURE <имя> AS < операторы_tsql> Изменяет операторы Transact-SQL, содержащие в себе хранимую процедуру (См. урок 28, "Хранимые процедуры")
ALTER TABLE <имя> <определение_изменения> Изменяет определение таблицы
ALTER TRIGGER <имя> {FOR | AFTER | INSTEAD OF} <действие_dml>
Изменяет операторы Transact-SQL, содержащие в себе триггер (См. урок 29, "Триггеры")
ALTER VIEW <имя> AS <оператор_выборки> Изменяет операторы SELECT, которые создают представление
Оператор ALTER TABLE является составным: определение таблицы состоит из нескольких различных частей. Упрощенная версия синтаксиса для оператора ALTER TABLE приведена ниже:
ALTER TABLE <имя>
{
[ALTER COLUMN <определение_столбца>] |
[ADD <определение_столбца>] |
[DROP COLUMN <имя_столбца>] |
[ADD [WITH NOCHECK] CONSTRAINT <ограничение_для_таблицы>]
}
В Microsoft SQL Server имеется набор команд, предназначенный для выявления и устранения проблем согласованности в базе данных SQL Server. Для запуска этих команд нужно использовать в качестве префикса строку DBCC. На самом деле "DBCC" означает "database consistency checker" (средство проверки согласованности базы данных). Хотя команды DBCC первоначально разрабатывались как инструменты проверки согласованности, со временем диапазон применения команд DBCC расширился.
CHECKALLOC. Проверяет размещение и использование всех страниц в указанной базе данных. CHECKALLOC – это подмножество CHECKDB.
CHECKCATALOG. Проверяет согласованность в системных таблицах для указанной базы данных.
CHECKCOSTRAINTS. Проверяет целостность одного ограничения или всех ограничений по таблице.
CHECKDB. Проверяет размещение (строк, страниц и экстентов) и структурную целостность всех объектов в указанной базе данных. Эта команда выявляет и устраняет проблемы, связанные с размещением базы данных и таблицами. На самом деле DBCC CHECKDB проверяет целостность всех элементов в базе данных. Будьте готовы к тому, что для ее выполнения потребуется некоторое время.
CHECKFILEGROUP. Проверяет размещение и структурную целостность объектов в указанной группе файлов базы данных. Вы можете использовать эту команду вместо DBCC CHECKDB, если предполагаете, что запорчена только группа файлов, что может произойти из-за отказа оборудования.
CHECKIDENT. Проверяет и, если нужно, исправляет текущее значение типа identity для указанной таблицы.
CHECKTABLE. Проверяет целостность страниц типа data, index, text, ntext и image для указанной таблицы. Эта команда полезна для проверки таблицы, которая, по вашим предположениям, может быть повреждена.
CLEANTABLE. Возвращает пространство, которое раньше использовалось для данных переменной длины типа varchar или данных типа text.
CONCURRENCYVIOLATION. Для версий SQL Server Standard Edition и Personal Edition сообщает, когда на сервере одновременно исполняется более пяти пакетов.
DBREINDEX Использовалась для переиндексации индексов таблицы. Эта команда уже не поддерживается в SQL Server 2000. Для выполнения этой задачи в Microsoft SQL Server 2000 используйте предложение DROP_EXISTING с командой CREATE INDEX.
DBREPAIR. Использовалась для удаления поврежденной базы данных. Эта команда не поддерживается в SQL Server 2000. Вместо нее следует использовать команду DROP DATABASE.
dll-имя (FREE). Выгружает из памяти указанную расширенную хранимую DLL-процедуру.
DROPCLEANBUFFERS. Удаляет все пустые буферы из буферного пула.
FREEEPROCCACHE. Удаляет все элементы из кэша процедур.
HELP. Возвращает синтаксис указанного оператора DBCC, что позволяет вам быстро использовать эту команду без обращения к SQL Server Books Online. Задавая имя оператора, не указывайте ключевое слово DBCC.
INDEXDEFRAG. Дефрагментирует кластеризованные и вторичные индексы для указанной таблицы.
INPUTBUFFER. Выводит на экран последний оператор, переданный в SQL Server пользователем, который связан с указанным идентификатором системного процесса (SPID-номером).
MEMUSAGE. Раньше создавал подробный отчет об использовании памяти. Эта команда больше не поддерживается.
NEWALLOC. Обеспечивает те же функциональные возможности, что и команда DBCC CHECKALLOC. Эта команда больше не поддерживается.
OPENTRAN. Выводит информацию о самой "старой" активной транзакции в базе данных. Это полезно для поиска "зависших" или длительных транзакций.
OUTPUTBUFFER. Выводит выходные данные, переданные из SQL Server пользователю, который связан с указанным SPID-номером.
PINTABLE. Помечает таблицу как закрепляемую в памяти. Закрепляемая в памяти таблица не освобождает себя из кэш-памяти. Иными словами, она постоянно размещена в кэше и не извлекается из него. Это полезно для небольших таблиц, которые редко используются, но требуют немедленного доступа. Вы должны убедиться, что закрепляемая в памяти таблица не использует слишком много памяти, иначе это окажет нежелательное влияние на другую обработку в SQL Server.
PROCCACHE. Выводит информацию о кэше процедур SQL Server. Эта информация может оказаться полезной для оценки эффективности кэша процедур и операторов SQL.
ROWLOCK. Использовалась в Microsoft SQL Server 6.5, чтобы активизировать блокировку строк. В SQL Server 2000 это происходит автоматически.
SHOWCONTIG. Выводит информацию о фрагментированности данных и индексов в указанной таблице. Сильно фрагментированный индекс следует создать заново. Сильно фрагментированную таблицу следует экспортировать и затем импортировать назад в базу данных.
SHOW_STATISTICS. Выводит статистику для указанного элемента в указанной таблице. Именно эта статистика используется оптимизатором запросов.
SHRINKDATABASE. Уплотняет файлы, связанные с указанной базой данных. Для выполнения этой задачи рекомендуется использовать параметр autoshrink процедуры sp_dboption.
SHRINKFILE. Уплотняет указанный файл. Это может быть файл данных или файл журнала.
SQLPERF. Предоставляет информацию об использовании пространства для журнала транзакций во всех базах данных. Использование этой команды для слежения за использованием пространства файлов журнала полезно для планирования мощности и состава системы.
TEXTALL. Использовалась для проверки согласованности таблиц, содержащих колонки типа text, ntext и image. В SQL Server 2000 ту же задачу выполняют DBCC CHECKDB и CHECKTABLE. Однако вместо DBCC TEXTALL рекомендуется использовать DBCC CHECKDB.
TEXTALLOC. Использовалась для проверки согласованности таблиц, содержащих колонки типа text, ntext и image. В SQL Server 2000 ту же задачу выполняют DBCC CHECKDB и CHECKTABLE. Однако вместо DBCC TEXTALLOC рекомендуется использовать DBCC CHECKTABLE. DBCC TEXTALL раньше запускала DBCC TEXTALLOC.
TRACEOFF. Сбрасывает указанный флаг или флаги трассировки SQL Server.
TRACEON. Активизирует указанный флаг или флаги трассировки SQL Server.
TRACESTATUS. Выводит состояние указанного флага или флагов трассировки SQL Server.
UNPINTABLE. Помечает ранее закрепленную в памяти таблицу как незакрепленную. После этого таблица рассматривается в кэше как любая другая таблица.
UPDATEUSAGE. Выводит и исправляет неточности в таблице sysindexes. Эти неточности могут приводить к тому, что sp_spaceused будет возвращать неверные данные.
USEROPTIONS. Возвращает состояние операций оператора SET, заданных для текущего соединения. Это подходит только для текущего соединения.