русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Модификация данных через представление


Дата добавления: 2015-07-09; просмотров: 626; Нарушение авторских прав


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

♦ Если вы применяете представление для модификации данных, то эта модификация может повлиять только на базовую таблицу. Это означает, что если представление отображает данные из двух таблиц, вы можете написать инструкцию, обновляющую только одну таблицу. Если же некоторая инструкция попытается обновить обе таблицы, вы получите сообщение об ошибке.

♦ Вы не можете модифицировать данные в представлении, использующем агрегатные функции. Агрегатной называется функция, возвращающая итоговое зна­чение некоторого типа, например, SUM () или AVG (). Если вы попытаетесь модифицировать такое представление, то получите сообщение об ошибке.

 

♦ Вы уже знаете, что представления необязательно отображают все поля таблицы. Если вы попытаетесь вставить запись в представление, не отображающее все поля, то может возникнуть проблема. Некоторые из полей, не отображае­мые в представлении, могут не принимать пустые значения, но вы не можете вставить данные в поля, отсутствующие в представлении. Однако вы все же можете использовать представление для операций вставки и удаления.

Рис. 6. Новое сводное представление

Чтобы модифицировать данные через представление, нужно создать такое представление. У нас его пока нет, поскольку в вашем текущем представлении нет доста­точного количества столбцов из какой-либо таблицы для модификации. Поэтому мы создадим более простое представление для обновления таблицы .

1. Откройте SQL Server Management Studio и выполните подключение с использованием аутентификации Windows.

2. В окне Object Explorer раскройте папки сервера Databases=> Sales,
щелкните правой кнопкой на папке Views и выберите команду New View
Откроется окно со списком таблиц БД Sales.



3. Выберите таблицы, поля которых будут использоваться в запросе.

4. С помощью мыши перетащите используемые в запросе поля в столбец Column закладки View. Эти поля автоматически добавляются в шаблон запроса SELECT в нижней части окна.

5. Для сохранения запроса закройте закладку, нажав на [Х] в правом верхнем углу окна View , и в раскрывшемся окне введите имя представления Update_Products.

Теперь у вас есть представление (рис. 7), и вы можете протестировать его, чтобы убедиться в возможности обновления данных.

1. Щелкнув на кнопке New Query, откройте новый запрос SQL Server Query.

2. Введите и выполните следующий код тестирования представления

USE Sales

SELECT * from dbo.Update_Products

Рис. 7. Создаем представление с возможностью обновления данных

 

3. Теперь вы знаете, что представление работает так, как ожидалось. Создадим новую запись. Откройте новый запрос SQL Server и выполните следующий код.

USE Sales

INSERT dbo.Update_Products

VALUES ('tee',10)

4. Чтобы просмотреть данные, вставленные в базовую таблицу, выполните в окне запросов следующий код.

USE Sales

SELECT * FROM dbo.Products

WHERE Description = 'Tee'

В результирующем наборе данных из представления dbo.Update_Products вы должны увидеть только два заполненных столбца. Однако, взглянув на базовую таблицу, вы увидите три заполненных столбца. При модифи­кации представления вы вставили значения только в два доступных столбца, а про­грамма SQL Server заполнила остальные, поскольку в них применены ограничения на умолчания.



<== предыдущая лекция | следующая лекция ==>
Объединение двух таблиц в представлении | Понятие хранимой процедуры


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.961 сек.