Читаем MySQL 5.0. Библиотека программиста полностью

• WHERE <Условие отбора> – укажите условие отбора, чтобы изменения были применены только к тем строкам таблицы, которые удовлетворяют этому условию. Если условие отбора не задано, изменения будут применены ко всем строкам таблицы. Условия отбора мы рассматривали в подразделе «Условия отбора». В условиях отбора можно использовать вложенный запрос (см. подраздел «Вложенные запросы»), который не должен обращаться к самой модифицируемой таблице.

• ORDER BY <Имя столбца> [ASC или DESC] – при необходимости вы можете указать, в каком порядке применять изменения к строкам таблицы. Обычно порядок применения изменений не влияет на результат выполнения операции. Однако в некоторых случаях последовательность действий может быть важна. Например, если вы установили предельное количество изменяемых строк (см. следующий пункт), то некоторые строки, удовлетворяющие условию отбора, могут остаться неизменными, а какие именно это будут строки – зависит от последовательности применения изменений. Другим подобным случаем является обновление значений первичного ключа или уникального индекса, которые не должны содержать повторяющихся значений, а наличие или отсутствие повторяющихся значений в столбце может зависеть от порядка применения изменений.

• LIMIT <Количество строк> – при необходимости вы можете указать максимальное количество строк таблицы, которые могут быть изменены командой UPDATE. Если это количество измененных строк достигнуто, операция завершается, даже если в таблице еще остались строки, которые удовлетворяют условию отбора и не были изменены.

...

Примечание

При обновлении значения первичного ключа в родительской таблице выполняются проверки целостности данных (см. описание параметров внешнего ключа в пункте «Ключевые столбцы и индексы»).

Следующая команда, которую мы рассмотрим, – это команда REPLACE, осуществляющая либо добавление, либо замещение строк таблицы. Она имеет те же параметры, что и команда INSERT (см. подраздел «Вставка отдельных строк»):

REPLACE [INTO] <Имя таблицы>

[(<Список столбцов>)]

VALUES

(<Список значений 1>),

(<Список значений 2>),

(<Список значений N>);

Если в строке, вставляемой в таблицу с помощью команды REPLACE, значение первичного ключа или уникального индекса не совпадает ни с одним из уже существующих значений, то эта команда работает так же, как команда INSERT (если в таблице нет ни первичного ключа, ни уникального индекса, то команда REPLACE всегда работает как команда INSERT). Если же в таблице есть строка с таким же значением первичного ключа или уникального индекса, то перед добавлением новой строки прежняя строка удаляется. Например, выполнив команду

REPLACE INTO Products

VALUES

(3,\'Соковыжималка Мосбытприбор СШ-800\',

\'Цвет: кремовый. Мощность: 350 Вт\',1299.99);

мы тем самым заменим в таблице Products (Товары) прежнюю строку с идентификатором 3, содержавшую информацию о кофеварке (см. листинг 2.5 выше), новой строкой, также имеющей идентификатор 3, но содержащей информацию о соковыжималке.

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

И, наконец, последняя команда, которую мы рассмотрим, – команда удаления строк таблицы:

Перейти на страницу:

Похожие книги

1С: Бухгалтерия 8 с нуля
1С: Бухгалтерия 8 с нуля

Книга содержит полное описание приемов и методов работы с программой 1С:Бухгалтерия 8. Рассматривается автоматизация всех основных участков бухгалтерии: учет наличных и безналичных денежных средств, основных средств и НМА, прихода и расхода товарно-материальных ценностей, зарплаты, производства. Описано, как вводить исходные данные, заполнять справочники и каталоги, работать с первичными документами, проводить их по учету, формировать разнообразные отчеты, выводить данные на печать, настраивать программу и использовать ее сервисные функции. Каждый урок содержит подробное описание рассматриваемой темы с детальным разбором и иллюстрированием всех этапов.Для широкого круга пользователей.

Алексей Анатольевич Гладкий

Программирование, программы, базы данных / Программное обеспечение / Бухучет и аудит / Финансы и бизнес / Книги по IT / Словари и Энциклопедии
1С: Управление торговлей 8.2
1С: Управление торговлей 8.2

Современные торговые предприятия предлагают своим клиентам широчайший ассортимент товаров, который исчисляется тысячами и десятками тысяч наименований. Причем многие позиции могут реализовываться на разных условиях: предоплата, отсрочка платежи, скидка, наценка, объем партии, и т.д. Клиенты зачастую делятся на категории – VIP-клиент, обычный клиент, постоянный клиент, мелкооптовый клиент, и т.д. Товарные позиции могут комплектоваться и разукомплектовываться, многие товары подлежат обязательной сертификации и гигиеническим исследованиям, некондиционные позиции необходимо списывать, на складах периодически должна проводиться инвентаризация, каждая компания должна иметь свою маркетинговую политику и т.д., вообщем – современное торговое предприятие представляет живой организм, находящийся в постоянном движении.Очевидно, что вся эта кипучая деятельность требует автоматизации. Для решения этой задачи существуют специальные программные средства, и в этой книге мы познакомим вам с самым популярным продуктом, предназначенным для автоматизации деятельности торгового предприятия – «1С Управление торговлей», которое реализовано на новейшей технологической платформе версии 1С 8.2.

Алексей Анатольевич Гладкий

Финансы / Программирование, программы, базы данных