Update – обновление информации в таблице 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Update – обновление информации в таблице



Синтаксис:

UPDATE <имя_таблицы> SET <имя_столбца> = <значение>,...

[ FROM {<имя таблицы> | < SELECT -запрос>},…]

[ WHERE <условие>]

За один вызов UPDATE можно изменить данные в одном или нескольких столбцах для одной или множества записей только в одной таблице. С ключевого слова SET начинается блок, в котором определяется список изменяемых столбцов. Синтаксис <значение>:=={<константа> | <переменная> | <выражение> | DEFAULT | NULL }. Изменению подвергаются все строки, удовлетворяющие критериям ограничения области действия запроса UPDATE, которые задаются с помощью раздела WHERE.

Примеры:

UPDATE Authors SET address = “ Садовая 13 А, кв. 50” WHERE au_lname = ” Берлиоз ” AND au_fname = ” Михаил ”

UPDATE publishers SET url=" сайт неизвестен " WHERE url IS NULL

Если в инструкции UPDATE будет пропущен раздел WHERE, то заданные в разделе SET изменения будут сделаны в каждой строке таблицы. Имеет смысл для проверки сначала выполнить инструкцию типа SELECT Count (*) с тем же критерием WHERE, чтобы узнать, сколько строк будет изменено с помощью UPDATE. При составлении выражения можно ссылаться на любые столбцы таблицы, включая изменяемые.

UPDATE Titles SET price=price+10

Если при изменении данных в таблице необходимо учесть состояние данных в других таблицах, то они указываются в разделе FROM. После того как источник данных указан в разделе FROM, в разделах WHERE и SET можно ссылаться на столбцы этого источника данных.

Пример: в таблице subjects (subject, fo, name) в поле fo указан номер федерального округа, к которому принадлежит данный субъект федерации. В частично заполненной таблице peoples (xsubject, xfo, value) осталось незаполненным поле xfo с тем же смыслом. Как восстановить недостающую информацию?

UPDATE Peoples SET xfo = fo FROM subjects WHERE xsubject=subject

DELETE – удаление информации из таблицы

Синтаксис:

DELETE FROM <имя_таблицы> [ WHERE <условие> ]

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

Примеры:

DELETE FROM publishers WHERE publisher = "Microsoft Press"

Удалить из таблицы students студентов, имеющих две и более двойки по результатам экзаменов (если это позволяют ограничения целостности):

DELETE FROM students WHERE id_student IN (

SELECT id_student FROM testing WHERE result=2 GROUP BY id_student HAVING count(*)>2)

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

Введение в SQL Server.

Microsoft SQL Server 2000, на базе которого будет строиться дальнейшее изложение, является реляционной СУБД, поддерживающей технологию клиент-сервер вплоть до создания распределённых баз данных в масштабе локальной или глобальной компьютерной сети. SQL Server позволяет создавать базы данных различного масштаба: от уровня домашней сети до корпоративного. По уровню значимости основным конкурентом SQL Server, которому обычно отдаётся первое место по многим показателям, является Oracle Corporation.

Краткая история:

1. В 1988 году Microsoft и Ashton-Tate анонсировали первую версию Microsoft SQL Server — реляционную СУБД для локальных вычислительных сетей. Новый продукт носил название Ashton-Tate/Microsoft SQL Server и представлял собой версию Sybase DataServer для OS/2. Роль Ashton-Tate заключалась в том, что эта фирма предоставила dBASE IV, используемую для разработки приложений.

2. В 1992 выпущен SQL Server 4.2 — 16-разрядная СУБД, результат совместной работы Microsoft и Sybase. В этой СУБД были реализованы клиентские библиотеки для MS-DOS, Windows и OS/2, помимо этого в нее впервые были включены средства администрирования с графическим интерфейсом под управлением Windows.

3. В 1996 году выпущен SQL Server версии 6.5, обладавший встроенной поддержкой Web-приложений, средствами распределенного администрирования, наличием динамических блокировок.

4. 1998 — выпущен Microsoft SQL Server 7.0 с радикально измененной архитектурой. Это была первая версия SQL Server, не содержавшая унаследованного кода, оставшегося со времен сотрудничества с Sybase. Особо стоит отметить появление в этой версии OLAP-служб (служб анализа данных) в составе продукта (до этого серверные OLAP-средства, производимые поставщиками серверных СУБД, включая и Oracle, продавались исключительно как отдельные продукты и относились к категории весьма дорогостоящего программного обеспечения).

5. В 2000 – выпущен Microsoft SQL Server 2000, поддерживающий XML (eXtensible Markup Language, расширяемый язык разметки), а также содержащий множество нововведений в административных утилитах. Версия Microsoft SQL Server 2000 построена на основе ядра Microsoft SQL Server 7.0. Ее отличительными особенностями являются повышенная масштабируемость, производительность и интеграция с Internet.

Одним из главных событий, определивших дальнейшую судьбу Microsoft SQL Server, стало решение Microsoft сосредоточить усилия исключительно на поддержке только платформы Windows NT. Эта СУБД настолько связана с операционной системой, что ее надежность, масштабируемость и производительность определяются надежностью, масштабируемостью и производительностью самой платформы, и положение SQL Server на рынке будет зависеть от выпуска новых версий Windows. Рекомендуемая платформа: Windows 2000 Server.

Одним из преимуществ SQL Server является простота его применения, в частности администрирования. SQL Server Enterprise Manager, входящий в состав всех редакций Microsoft SQL Server, представляет собой полнофункциональное и достаточно простое средство для администрирования этой СУБД.

SQL Server имеет в своём составе программное обеспечение для установки на серверные системы и клиентское программное обеспечение, которое устанавливается на персональные компьютеры клиентов. Приложения клиента выполняют всю работу по взаимодействию с пользователем, включая отображение информации и предоставление возможности работы с приложением через графический интерфейс пользователя. Все клиентские приложения взаимодействуют с SQL Server, используя один или два собственных API (Application Programming Interface) для доступа к базе данных: ODBC (Open Databases Connectivity, открытое соединение с базами данных) и DB - Library (Библиотека баз данных). Продукты SQL Server содержат множество сервисов и компонентов как на компьютерах клиентов, так и на компьютере-сервере, которые взаимодействуют друг с другом, а также с сервисами и компонентами Windows.

SQL Server поддерживает весьма широкий набор сетевых протоколов. Для каждого из них поддерживается режим прямого доступа с использованием типичных для каждого протокола средств (например, Sockets (сокеты) для TCP/IP или IPS/SPX; Named Pipes (именованные каналы) для NetBios), что дает возможность обращаться к серверу не только из среды Windows и OS/2, но и с платформ Mac и Unix. Дополнительно для протоколов TCP/IP, IPX/SPX и NetBios поддерживается доступ через защищенные вызовы RPC (Remote Procedure Call, удалённый вызов процедур). Данный тип соединений называют trusted connection, или доверительные соединения.

Как принято для серверных приложений Windows NT, ядро SQL Server реализовано в виде набора сервисов, для управления которыми используются административные утилиты. Компоненты, образующие ядро SQL Server:

1. собственно сервер, который может быть запущен как сервис MSSQLServer или как приложение с командной строки (Sqlservr.exe);

2. компонент SQL Executive – сервис SQLExecutive, обеспечивающий выполнение на основе расписания таких операций, как репликация данных, запуск заданий; кроме того на него возлагается контроль за наступлением событий и оповещение администраторов и/или операторов;

3. компонент DTC (Distributed Transaction Coordinator) – сервис MSDTC, отвечающий за выполнение распределенных транзакций;

4. компонент SQL Mail, обеспечивающий интеграцию SQL Server в почтовую систему организации и позволяющий отправлять запросы и получать результаты их выполнения по почте.

Устройства баз данных (database devices) могут размещаться в дисковых файлах или на неразмеченных разделах жестких дисков (RAW partitions), устройства резервных копий (dump devices) могут быть ассоциированы с дисками, съемными накопителями, устройствами записи на магнитные ленты и именованными каналами (для систем распределенного резервного копирования). Базы данных являются непосредственными хранилищами пользовательских данных и хранимых процедур. Каждая база данных, допускающая режим записи, должна иметь ассоциированный с ней журнал транзакций, который может располагаться как на отдельном устройстве, так и делить устройство с базой данных.

Версия языка SQL, используемого SQL Server, называется Transact-SQL, или T-SQL, в память о том, что в именно этом в диалекте SQL появились операторы управления транзакциями. В T-SQL поддерживаются все операторы стандарта ANSI SQL-92, включая оператор CASE, декларативную целостность (Declarative Reference Integrity, или DRI) и описание объединений (joins).

Дополнительно T-SQL позволяет указывать оптимизатору запросов порядок выполнения операций и используемые индексы. Наличие оператора EXEC, способного воспринимать в качестве входного параметра символьную строку, дает возможность динамически формировать и исполнять предложения SQL.

 



Поделиться:


Последнее изменение этой страницы: 2017-02-08; просмотров: 446; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.16.130.1 (0.008 с.)