Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Метод указания AIS

.pdf
Скачиваний:
8
Добавлен:
18.02.2016
Размер:
9.86 Mб
Скачать

Вставка строк с использованием панели сетки Grid Pane

Панель сетки Grid Pane предоставляет самый простой способ создания оператора INSERT, поскольку при этом не требуется запоминать синтаксис оператора.

Вставьте строку с использованием панели сетки Grid Pane

1.Перейдите к папке Tables базы данных STUDENT, щелкните правой кнопкой мыши на таблице LANG в рабочей панели Details Pane, откройте меню Open Table (Открытие таблицы) и выберите Query (Запрос). Будет открыт конструктор запросов Query Designer с отображением четырех панелей.

Совет. Применение команды Query (Запрос) в меню Open Table (Открытие таблицы) или Open View (Открытие представления) является самым простым способом открыть конструктор запросов Query Designer с отображением всех панелей. Хотя устанавливаемым по умолчанию оператором SQL является SELECT * FROM <таблица_или_представление>, запрос не исполняется, поэтому никакие строки не возвращаются и не показываются.

2. Скройте панель SQL Pane и панель результатов Results Pane. (Останется Diagram и Grid)

3. Щелкните на кнопке Change Query Type (Изменить тип запроса) в панели инструментов КАТУконструктораИМзапросов и выберите.С.InsertСIntoЕЙФУЛЛИНА(Вставить в) из списка. Конструктор запросов Query Designer изменит вид панели сетки Grid Pane, чтобы она отображала только ячейки

Column и New Value.

4. Добавьте столбец KODLANG в панели сетки Grid Pane и установите для New Value значение '77'.

К.Т5. Нажмитекнопку. ОМАРБЕКОВАRun (Выполнить) в панели инструментов конструктора запросовА, .чтобыС. исполнить запрос. Конструктор запросов Query Designer отобразит сообщение, подтверждающее,

что в таблицу добавлена одна строка.

6.Нажмите ОК, чтобы закрыть окно сообщения. Не закрывая конструктор запросов Query Designer,

откройте новое представление таблицы LANG, щелкнув правой кнопкой мыши на таблице LANG в рабочей панелиСУБДDetails Pane, указав на Open Table (Открытие таблицы) и выбрав Return All Rows (Показать все строки). Откроется новый экземпляр конструктора запросов, в котором будут отображены все строки из таблицы LANG.

7.Осуществите прокрутку до конца таблицы, чтобы убедиться, что новая строка добавлена.

Вставка строк с использованием панели SQL Pane

Хотя панель сетки Grid Pane предоставляет простой метод создания оператора INSERT, но использование панели SQL Pane, позволяющее вводить оператор непосредственно, предоставляет большие функциональные возможности.

Вставьте строку с использованием панели SQL Pane

1.Перейдите к окну конструктора запросов Query Designer, содержащему оператор INSERT.

2.Скройте панель сетки Grid Pane и панель диаграмм Diagram Pane и отобразите панель SQL Pane.

3.Замените оператор SQL на следующий:

INSERT INTO

Lang

(kodlang)

 

VALUES ('88')

 

101

4.Нажмите кнопку Run (Выполнить) в панели инструментов конструктора запросов, чтобы исполнить запрос. Конструктор запросов Query Designer отобразит сообщение, подтверждающее, что строка добавлена.

Вставьте строку, задающую значения для всех столбцов

1.Перейдите к окну конструктора запросов, содержащему оператор INSERT.

2.Замените оператор SQL на следующий:

INSERT INTO LANG

VALUES ('888','Японский')

3.Нажмите кнопку Run (Выполнить) в панели инструментов конструктора запросов, чтобы исполнить запрос. Конструктор запросов Query Designer отобразит сообщение, подтверждающее, что строка была добавлена.

Вставьте строку с использованием значений DEFAULT и NULL

1. Перейдите к окну конструктора запросов Query Designer, содержащему оператор INSERT.

2. Измените оператор SQL следующим образом:

КАТУINSERT INTO langИМ.С.СЕЙФУЛЛИНА

(KODLANG, NAMELANG) VALUES (NULL, DEFAULT)

К.Т3. Нажмитекнопку. ОМАРБЕКОВАRun (Выполнить) в панели инструментов конструктора запросовА, .чтобыС. исполнить запрос. Конструктор запросов Query Designer отобразит сообщение, подтверждающее,

что строка была добавлена.

Вставка нескольких строкСУБД

Оператор INSERT имеет вторую форму, которая использует оператор SELECT вместо списка VALUES с целью задания значений для строки (или строк), которая будет добавлена. Эта форма оператора INSERT имеет следующий вид:

INSERT INTO таблица_или_представление [(список_столбцов)] SELECT [(список_столбцов)

FROM таблица_или_представление

[WHERE (условие)]

Фраза WHERE в операторе является необязательной. Если она отсутствует, в таблицу или представление, заданные в фразе INSERT, будут добавлены все строки из таблицы или представления, заданных в фразе FROM.

Вставьте несколько строк с использованием панели сетки Grid Pane

1.Перейдите к папке Tables базы данных, щелкните правой кнопкой мыши на таблице LANG, откройте Open Table (Открытие таблицы) и выберите Return All Rows (Показать все строки). Будет открыт новый экземпляр конструктора запросов Query Designer.

102

2.Щелкните на кнопке Change Query Type (Изменить тип запроса) в панели инструментов конструктора запросов и выберите Insert From (Вставить из) в списке. Конструктор запросов

Query Designer отобразит диалоговое окно, предлагающее вам выбрать таблицу-адресат.

3.Выберите таблицу из списка и нажмите ОК. Конструктор запросов Query Designer добавит в

панель сетки Grid Pane столбец Append.

4.С помощью столбца Append Измените запрос, чтобы вставить некоторые столбцы.

5.В столбце Criteria можно записать условие дабавления данных ( KODLANG = '000')

6.Нажмите кнопку Run (Выполнить) в панели инструментов конструктора запросов, чтобы повторно исполнить запрос SELECT *.

КАТУ ИМ СЕЙФУЛЛИНА

Вставьте несколько строк с использованием панели SQL Pane

1. Перейдите к окну конструктора запросов Query Designer, содержащему оператор INSERT. К.Т2. Скройтепанель. ОМАРБЕКОВАдиаграмм Diagram Pane и панель сетки Grid Pane и отобразитеАпанель.SQLС.

Pane.

3. Замените оператор SQL на следующий:

 

 

СУБД

INSERT INTO oblast (KODOBL, NAMEOBL)

SELECT

KODLANG, NAMELANG

FROM

lang

 

WHERE (KODLANG = N'000')

103

Модификация строк

Понятие об операторе UPDATE

Оператор UPDATE позволяет изменять значения в одной или в нескольких строках таблицы. Базовый синтаксис оператора UPDATE следующий:

UPDATE таблица_или_представление

SET объекты_изменения

[WHERE (условие)]

Подобно оператору INSERT, один оператор UPDATE может модифицировать только одну таблицу или представление. Для обновления представления с помощью оператора UPDATE существуют те же ограничения, что и для обновления представления с помощью оператора INSERT:

За ключевым словом SET следует перечень подлежащих обновлению столбцов, отделяемых запятыми, а также их новые значения. Форма записи при этом следующая: имя_столбца = новое_значение. Новое значение может быть константой или выражением, которое также может ссылаться на сам столбец.

Например, выражение SalesPrice = SalesPrice * .90 будет уменьшать значения в столбце SalesPrice на 10

КАТУпроцентов. ИМ.С.СЕЙФУЛЛИНА

Фраза WHERE является необязательной. Если она имеется, то должна задавать строки, подлежащие обновлению. Если фраза WHERE в операторе UPDATE отсутствует, будут модифицироваться все

Кстрокив.таблицеН.. ОМАРБЕКОВА А.С.

Использование оператора UPDATE

Как и большинство других форм запросов, вы можете создавать запрос UPDATE в конструкторе запросов Query Designer сСУБДиспользованием панели сетки Grid Pane, либо непосредственно вводя оператор в панели SQL Pane.

Модификация строк с использованием панели сетки Grid Pane

Панель сетки Grid Pane конструктора запросов предоставляет возможности для создания запроса

UPDATE.

Модифицируйте все строки с использованием панели сетки Grid Pane

1.Не закрывая конструктор запросов Query Designer, откройте новое представление таблицы kontengent, щелкнув правой кнопкой мыши на таблице kontengent в рабочей панели Details Pane, указав на Open Table (Открытие таблицы) и выбрав Return All Rows (Показать все строки). Будет открыт новый экземпляр конструктора запросов Query Designer, отображающий все строки из таблицы kontengent.

2.Перейдите в окно конструктора запросов Query Designer, отображающее панель сетки Grid Pane и панель результатов Results Pane. Щелкните на кнопке Change Query Type (Изменить тип

запроса) в панели инструментов конструктора запросов и выберите Update

(Модифицировать). Конструктор запросов добавит в сетку столбец нового значения New Value.

104

3.Добавьте столбец RKL в панель сетки Grid Pane и установите на ячейке New Value новое значение.

4.Нажмите кнопку Run (Выполнить) в панели инструментов конструктора запросов, чтобы исполнить запрос. Конструктор запросов Query Designer отобразит сообщение, подтверждающее, что все строки столбца RKL были модифицированы.

Модифицируйте все строки с использованием панели сетки Grid Pane

КАТУ1. Не закрываяИМконструктор .запросовС.QueryСЕЙФУЛЛИНАDesigner, откройте новое представление таблицы kontengent, щелкнув правой кнопкой мыши на таблице kontengent в рабочей панели Details

Pane, указав на Open Table (Открытие таблицы) и выбрав Return All Rows (Показать все строки). Будет открыт новый экземпляр конструктора запросов Query Designer, отображающий

все строки из таблицы kontengent. К.Т2. Перейдите.Н.в окноОМАРБЕКОВАконструктора запросов Query Designer, отображающее панель сеткиАGrid.PaneС.

и панель результатов Results Pane. Щелкните на кнопке Change Query Type (Изменить тип

запроса) в панели инструментов конструктора запросов и выберите Update

(Модифицировать). Конструктор запросов добавит в сетку столбец нового значения New

3.Добавьте столбец RKLСУБДв панель сетки Grid Pane и установите на ячейке New Value новое значение.

4.Добавьте в столбец Criteria значение равное = 123

5.Нажмите кнопку Run (Выполнить) в панели инструментов конструктора запросов, чтобы исполнить запрос. Конструктор запросов Query Designer отобразит сообщение, подтверждающее,

что строка столбца RKL со значением 123 была модифицирована.

105

Модификация строк с использованием панели SQL Pane

Как и для других форм запросов, непосредственный ввод оператора UPDATE в панели SQL обеспечивает большую гибкость.

Модифицируйте е строки с использованием панели SQL Pane

1.Перейдите к окну, содержащему оператор UPDATE.

2.Отобразите панель SQL Pane и скройте панель сетки Grid Pane.

3.Измените оператор SQL следующим образом:

UPDATE

lang

SET

NAMELANG = N'РУССКИЙ'

WHERE

(KODLANG = N'2')

4. Нажмите кнопку Run (Выполнить) в панели инструментов конструктора запросов, чтобы исполнить запрос. Конструктор запросов Query Designer отобразит сообщение о количестве строк, подвергшихся изменениям в результате выполнения запроса.

Модификация строк с использованием фразы FROM

КАТУМожно использоватьИМфразу SELECTв операторе.СЕЙФУЛЛИНАINSERT, чтобы вставить значения из другой. Оператор UPDATE использует фразу FROM для извлечения значений из другой таблицы:

UPDATE таблица_или_представление КSETобъектыизменения. ОМАРБЕКОВА А.С.

FROM таблица_или_представление оператор_связывания условие_связывания

[WHERE (условие_ограниченияСУБД)]

Фраза FROM здесь имеет тот же формат, что и фраза FROM в операторе SELECT. Так же, как и для оператора SELECT, вы можете задать более одной таблицы или представления путем добавления операторов связывания. Необязательное условие WHERE может использоваться для ограничения множества модифицируемых строк.

Модифицируйте строки с использованием оператора FROM

1.Вернитесь к окну конструктора запросов Query Designer, содержащему оператор UPDATE.

2.Измените оператор SQL следующим образом:

UPDATE

lichkart

SET

lichkart.noudost = 'не известно'

FROM

lichkart INNER JOIN

 

kontengent ON lichkart.pin = kontengent.pin

Удаление строк

106

SQL Server предоставляет два оператора для удаления строк из таблицы или представления: оператор DELETE и оператор TRUNCATE TABLE. Оператор TRUNCATE TABLE безо всяких условий удаляет все строки в таблице. Оператор DELETE обеспечивает большую гибкость и дает возможность удалять только избранные строки с помощью фразы WHERE, которая может включать дополнительные таблицы и представления.

Понятие об операторе DELETE

Базовая структура оператора DELETE несколько отличается от других операторов SQL, с которыми мы сталкивались ранее. Его синтаксис следующий:

DELETE таблица_или_представление [FROM источники_таблиц] [WHERE условие_отбора]

Список столбцов в операторе DELETE не указывается, поскольку при удалении строки удаляются также все столбцы. Необязательная фраза WHERE дает возможность указывать, какие строки следует удалить. Если фраза WHERE опущена, удаляются все строки в указанной таблице или представлении.

КАТУФраза FROM, такжеИМнеобязательная, позволяет.СЕЙФУЛЛИНАзадавать дополнительные источники (таблицы или представления), которые будут использоваться в условии отбора в фразе WHERE. Подобный синтаксис

оператора может ввести в заблуждение, поскольку строки не будут удаляться из таблиц и представлений, указанных в фразе FROM. Если в фразе FROM вы указываете более одной таблицы или

представления, их имена следует отделять запятыми. КСовет. ОператорDELETE. ОМАРБЕКОВАне поддерживает применение операции JOIN, поэтому вам следуетАсвязывать.С.

таблицы или представления в фразе WHERE оператора.

Если таблица участвует в СУБДотношении, важно не допустить, чтобы при удалении в главной таблице оставались "висячие" строки. Висячими строками называют строки в зависимой таблице (таблице внешнего ключа), которые не имеют соответствующих строк в главной таблице (таблице первичного ключа).

Использование оператора DELETE

Подобно другим операторам SQL, используемым в конструкторе запросов Query Designer, оператор DELETE может быть непосредственно введен в панели SQL Pane, либо создан с использованием графических панелей.

Удаление строк с использованием панели сетки Grid Pane и панели диаграмм Diagram Pane

Панель сетки и панель диаграмм конструктора запросов Query Designer предоставляют графические средства для создания операторов DELETE; однако, они не поддерживают применение фразы FROM, которая дает возможность использовать в операторе DELETE дополнительные таблицы и представления.

Удалите избранные строки из таблицы

107

1.Щелкните правой кнопкой мыши на таблице kontengent, укажите на Open Table (Открытие таблицы) и выберите Query (Запрос). Будет открыт конструктор запросов Query Designer.

2.Щелкните на кнопке Change Query Type (Изменить тип запроса) в панели инструментов конструктора запросов, а затем выберите Delete (Удалить).

5.Вернитесь в окно конструктора запросов Query Designer, содержащее оператор DELETE.

6.Добавьте выражение Left(Name; 1) в ячейку Column и добавьте условие = 'А' в ячейку Criteria.

7. Запрос удалит строки с именами, начинающимися с буквы “А”.

Удаление строк с использованием панели SQL Pane

КАТУКак и в других случаяхИМ, непосредственный.С.вводСЕЙФУЛЛИНАоператора DELETE в панели SQL Pane конструктора запросов Query Designer обеспечивает большую гибкость, однако при этом вам необходимо помнить

синтаксис оператора.

Удалите строки с использованием фразы WHERE

К.Т2. .Н. ОМАРБЕКОВА А.С.

1.

Вернитесь к окну конструктора запросов, содержащему оператор DELETE.

 

Отобразите панель SQL Pane и скройте панель диаграмм Diagram Pane и панель сетки Grid

3.

Pane.

СУБД

 

Замените оператор SQL следующим:

DELETE FROM kontengent

WHERE (LEFT(NAME, 1) = 'А')

4.Нажмите кнопку Run (Выполнить) в панели инструментов конструктора запросов, чтобы исполнить запрос. Enterprise Manager отобразит сообщение, подтверждающее, что строка была удалена.

Оператор TRUNCATE TABLE

Результат выполнения оператора TRUNCATE TABLE идентичен результату выполнения оператора DELETE, для которого не указано условие WHERE, т.е. из таблицы удаляются все строки. Оператор TRUNCATE TABLE, отличается от оператора DELETE тем, что оператор TRUNCATE TABLE не записывается в журнал транзакций, что существенно ускоряет его выполнение.

Удаление всех строк с помощью оператора TRUNCATE TABLE

Оператор TRUNCATE TABLE может быть выполнен только из панели SQL Pane конструктора запросов

Query Designer.

108

Удалите все строки с использованием оператора TRUNCATE TABLE

1.Щелкните правой кнопкой мыши на таблице LANG в рабочей панели Details Pane, открыв меню Open Table (Открытие таблицы) и выбрав Query (Запрос). Будет открыто окно конструктора запросов Query Designer.

2.Скройте панель диаграмм Diagram Pane и панель сетки Grid Pane.

Замените имеющийся оператор SQL на следующий: TRUNCATE TABLE LANG

КАТУ ИМ.С.СЕЙФУЛЛИНА

К.Т.Н. ОМАРБЕКОВА А.С.

СУБД

109

16 Анализатор запросов Query Analyzer Задание

1.Запустите Query Analyzer

2.Выберите базу данных с помощью панели инструментов

3.Выберите базу данных из меню Query (Запрос)

4.Выполните запрос SELECT

5.Отобразите результаты запроса в отдельной таблице

6.Создайте сценарий

7.Откройте сценарий

8.Откройте таблицу

9.Откройте представление

10.Добавьте объект базы данных в окно запросов

Понятие о Query Analyzer

Хотя можно создавать и выполнять запросы и другие операторы Transact-SQL в Enterprise Manager, лучше выполнять это с помощью утилиты для администрирования базы данных. Анализатор запросов Query Analyzer в первую очередь является программным инструментом.

КАТУQuery Analyzer предоставляетИМмощныесредства.СЕЙФУЛЛИНАдля написания и отладки сложных наборов операторов Transact-SQL различных типов. (Мы рассмотрим один из таких типов – SQL-сценарии).

Запуск Query Analyzer

КВыможетезапустить.QueryОМАРБЕКОВАAnalyzer из Enterprise Manager или из меню Start (Пуск) в WindowsА. Есливы . запустили Query Analyzer из Enterprise Manager, Query Analyzer будет передавать информацию о

соединении из Enterprise Manager: если вы подключены к серверу, то Query Analyzer будет соединяться с этим сервером, и если у вас по умолчанию установлена какая-либо база данных, то Query Analyzer будет выбирать именно этуСУБДбазу данных.

Если вы запустили Query Analyzer из меню Start (Пуск) или если вы не создали в Enterprise Manager соединения с сервером или базой данных, вы должны будете в Query Analyzer создать соединение вручную.

Запустите Query Analyzer из Enterprise Manager

1.В Enterprise Manager в дереве консоли Console Tree найдите базу данных Student. В рабочей панели Details Pane SQL Server отобразит список объектов базы данных.

2.В меню Tools (Сервис) выберите SQL Query Analyzer. SQL Server откроет Query Analyzer и

автоматически соединиться с сервером и базой данных Aromatherapy.

Примечание. Если в Query Analyzer не отображается окно просмотра объектов Object Browser, нажмите F8 для его отображения.

Запустите Query Analyzer из меню Start (Пуск)

1.В панели задач нажмите кнопку Start (Пуск).

2.Перейдите к Programs (Программы) и выберите папку Microsoft SQL Server. Откроется папка

Microsoft SQL Server со списком значков.

110