Новые книги

Вы собрались купить ноутбук или уже успели сделать это? В таком случае вам необходима помощь. Хотя, казалось бы, какие могут быть проблемы при переходе на ноутбук со стационарного ПК – ведь основные принципы работы остаются теми же? С одной стороны, это действительно так, однако с другой – работа на ноутбуке имеет свою неоспоримую специфику.

Это выражается во всем: в особенностях выбора модели и комплектации (в отличие от стационарного ПК модернизировать ноутбук гораздо сложнее), в перманентной необходимости экономить заряд батареи и оптимизировать режимы работы, регулярно подключать внешние устройства и использовать беспроводные сети – в общем, практически в любой области работы на ноутбуке есть свои особенности.

Итак, если вы планируете перейти на ноутбук, эта книга, а также прилагаемые к ней видеоуроки – для вас.
Алекса Клэй и Кира Майя Филипс исследуют ту часть экономики, которая обычно остается за кадром, экономику хайпа – успешную модель мышления, которая способствует инновациям и предпринимательству в пределах корпоративных структур.

В центре внимания исследования – те, кто нарушает правила, чтобы найти оригинальное решение бизнес-проблемы. Это, к примеру, жители трущоб Бомбея или компьютерные хакеры. Авторы выбрали пять общих черт, присущих этим группам: энергичность, ловкость, склонность к провокации, решительность и мимикрия (умение подражать, маскироваться). Узнайте, как зарабатывать на хайпе, став немного out law.

Предложения модификации данных SQL

Глава 4. Предложения модификации данных SQL
4.1. Особенности и синтаксис предложений модификации

Модификация данных может выполняться с помощью предложений DELETE (удалить), INSERT (вставить) и UPDATE (обновить). Подобно предложению SELECT они могут оперировать как базовыми таблицами, так и представлениями. Однако по ряду причин не все представления являются обновляемыми. Пока зафиксируем этот факт, отложив описание представлений и особенностей их обновления до главы 5, но будем помнить, что термин "представление" относится только к обновляемым представлениям.

Предложение DELETE имеет формат

DELETE
FROM   базовая таблица | представление
[WHERE фраза];

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

Предложение INSERT имеет один из следующих форматов:

INSERT
INTO    {базовая таблица | представление} 
                [(столбец [,столбец] ...)]
VALUES ({константа | переменная}
           [,{константа | переменная}] ...);

или

INSERT
INTO {базовая таблица | представление} 
             [(столбец [,столбец] ...)]
     подзапрос;

В первом формате в таблицу вставляется строка со значениями полей, указанными в перечне фразы VALUES (значения), причем i-е значение соответствует i-му столбцу в списке столбцов (столбцы, не указанные в списке, заполняются NULL-значениями). Если в списке VALUES фразы указаны все столбцы модифицируемой таблицы и порядок их перечисления соответствует порядку столбцов в описании таблицы, то список столбцов в фразе INTO можно опустить. Однако не советуем этого делать, так как при изменении описания таблицы (перестановка столбцов или изменение их числа) придется переписывать и INSERT предложение.

Во втором формате сначала выполняется подзапрос, т.е. по предложению SELECT в памяти формируется рабочая таблица, а потом строки рабочей таблицы загружаются в модифицируемую таблицу. При этом i-й столбец рабочей таблицы (i-й элемент списка SELECT) соответствует i-му столбцу в списке столбцов модифицируемой таблицы. Здесь также при выполнении указанных выше условий может быть опущен список столбцов фразы INTO.

Предложение UPDATE также имеет два формата. Первый из них:

UPDATE (базовая таблица | представление}
SET	столбец = значение [, столбец = значение] ...
[WHERE фраза]

где значение - это

столбец | выражение | константа | переменная

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

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

Второй формат описывает предложение, позволяющее производить обновление значений модифицируемой таблицы по значениям столбцов из других таблиц. К сожалению в ряде СУБД эти форматы отличаются друг от друга и от стандарта. Для примера приведем один из таких форматов:

UPDATE  {базовая таблица | представление}
SET	столбец = значение [, столбец = значение] ...
FROM    {базовая таблица | представление} [псевдоним],
        {базовая таблица | представление} [псевдоним]
      [,{базовая таблица | представление} 
	                            [псевдоним]] ...
[WHERE  фраза]

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

В значениях, находящихся в правых частях равенств фразы SET, следует уточнять имена используемых столбцов, предваряя их именем таблицы (псевдонима).

3.6 | Содержание | 4.2