|
Программирование >> Реализация баз данных
Занятие 2 Выборка данных усложненных методик ) 87 Резюме поддерживает несколько усложненных методик работы с запросами, позво-извлекать из баз данных SQL Server: соединения, подзапросы и свод- ные Соединения позволяют получить данные из двух и более таблиц на основе логических связей между таблицами. Большииство соедицеций можно отнести к внутренним или внешним. Первые возвращают строки, только когда в обеих таблицах найдено по крайней мере по одной строке тствуюшей условию соединения. При этом nci.Jiio-чаются строки, у которых нет соответствующих строк в другое ицс Внешние соединения возвращают все строки как минимум одной таблицы или представления, указанного в конструкции FROM, если они соответствуют любому из условий поиска, заданных конструкциями WHERE и HAVING. SQL Server поддерживает три типа внешних соединений: левые, правые и полные. При левом внешнем соединении все строки извлекаются из таблицьг, расноложенной слева от левого внешнего соединения. При нравом внепшем соединении все строки извлекаются из таблицы, расположенной справа от правого внешнего соединения. Полное внешнее соединение возвращает все строки из обеих таблиц. Подзапрос это запрос, определенный с помощью оператора SELECT, который возвращает единственное значение и содержится внутри другого оператора SELECT, INSERT, UPDATE, DELETE или другого подзапроса. Подзапросы разрешается задавать в любом месте оператора SELECT. Большинство из них задают в конструкции ERE с использованием ключевых слов IN и NOT IN, в операторах сравнения с ключевыми словами ANY или ALL, а также с ключевыми словами EXISTS и NOT EXISTS. Transact-SQL также позволяет генерировать простые сводные отчеты. Для этого используют, например, такие операторы, как CUBE LLt . которые задают в конструкции GROUP BY оператора SELECT. Операторы CUBE и ROLLUP генерируют результирующие наборы, где для каждого элемента содержатся как строки с фактическими данными, так и сводные строки для каждой группы, в которых показаны агрегированные итоги этой группы. 188 выборка ит данных Глава 5 Занятие 3. Модификация данных в базах данных SQL Server СУБД позволяем цировать хранящиеся в системе данные. SQL Server поддерживает несколько методов добавления строк в таблицы баз данных, изменения данных в сушествуюших строках и удаление ок. На этом занятие азно, как добавлять, модифицировать и удалять информацию из баз данных SQL Server. Изучив материал этого занятия, вы сможете: добавлять данные в БД SQL Server; модифицировать данные в БД SQL Server;, удалять данные из БД SQL Server. Продолжительность занятия - около 35 минут. Добавление данных в БД SQL Server SQL Server поддерживает несколько добавления информации в базу данных: посредством оператора INSERT; , . . с помощью оператора средствами оператора WRITETEXT и некоторых функций интерфейса прикладного программирования баз данных (API БД), позволяющих добавить в строку данные типа ntexl, text или image; компонент массового копирования, используемый для добавления большого числа строк. Примечание Оператор INSERT жет работать как с представлениями, так и с таблицами (с некоторыми ограничениями). Добавление данных с помощью оператора INSERT Оператор INSERT добавляет в таблицу одну или несколько строк. В простейшем случае оператор INSERT имеет следующий вид: INSERT [INTO] табАица иаи представдение[{списоксталбцов)] значения Этот оператор шает в заданную таблицу или представление данные (значения) в виде одной или нескольких строк. Список имен столбцов разделенных запятыми, задает столбцы для размещения данных. Если столбцы не заданы, данные получат все столбцы или Если задана лишь часть то во все столбцы, не названные в списке, будет вставлено пустое значение или значение по умолчанию (если существует определение DEFAULT). Все не названные столбцы должны допускать пустые значения или у них должно быть определено значение по умолчанию. Кроме того, оператор INSERT не позволяет задать значения для столбцов следующих типов, поскольку SQL Server генерирует эти значения автоматически: столбцы со свойством IDENTITY; столбцы с определением DEFAULT, в котором использована функцияКЕ\У10(); вычисляемые столбцы. Занятие 3 Модификация данных в база ны,к SQL Server -j 39 Примечание Ключевое слово INTO в операторе INSERT не обязательно и используется лишь для того, чтобы сделать текст программы понятнее. Добавляемые данные должны соответствовать списку цов, Число значений должно быть равно числу а тип данных и точность целой и дробной части каждого значения должны совпадать с таковыми для столбца. Определяя оператор INSERT, можно задать значения с конструкции VALU- ES (для одной строки) или подзапроса SELECT Ьчля одной или нескольких строк). Добавление данных с помощью оператора INSERT...VALUES Конструкция VALUES позволяет задавать значения в одной строке таблицы. Значения указывают в виде списка скалярных выражений, разделенных запятой. Тип данных, точность целой и дробной части этих выражений должны совпадать с аналогичными параметрами соответствующего столбца из списка столбцов или допускать неявное преобразование. Если список не задан, значения должны быть указаны в той же вательности, что и столбцы таблицы или представления. Например, в базе данных Pubs создается следующая 1аблииа: USE Pubs CREATE TABLE NewBooks ( BookID INT IDENTITY(1,1) NOT NULL, BookTitle VARCHAR(f!0) NOT NULL, BookType CHAR(12) NOT NULL CONSTRAINT [oookLype.df] DEFAULT С Undecided), PubCity VARCHAR(50) NULL ) В созданную таблицу добавить строку с данными. В операторе INSERT для добавления новой строки в таблицу NewBooks используется конструкция VALUES: USE Pubs INSERT INTO NewBooks (BookTitle. PubCity) VALUES CLife Without Fear, Chicago-) В этом операторе определяются значение биов BookTitle и PubCity, Включать в оператор INSERT значение столбца BooJilD не нужно, поскольку столбец BooJilD определен со свойством IDENTITY и значения этого столбца генерируются автоматически. Кроме того, так как значение столбца BookType не определено, при исполнении оператора INSERT SQL Server автоматически добавляет в него значение по умолчанию (Undecided). Добавление данных с помощью подзапроса SELECT Подзапрос SELECT в операторе INSERT позволяет добавить к таблице данные из одной или нескольких других таблиц или представлений, причем несколько строк одновременно. Примечание Подзапрос SELECT в операторе INSERT применяется для добавления к та-существующих данных, тогда как конструкция VALUES в операторе INSERT используется для добавления к таблице новых данных. В следующее аторе INSERT для добавления строк в таблицу NewBooks используется подзапрос SELECT:
|
© 2006 - 2025 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |