Druzya.org
Возьмемся за руки, Друзья...
 
 
Наши Друзья

Александр Градский
Мемориальный сайт Дольфи. 
				  Светлой памяти детей,
				  погибших  1 июня 2001 года, 
				  а также всем жертвам теракта возле 
				 Тель-Авивского Дельфинариума посвящается...

 
liveinternet.ru: показано количество просмотров и посетителей

Библиотека :: Компьютеры и Программирование :: Начинаем изучать MySQL
<<-[Весь Текст]
Страница: из 157
 <<-
 
Более новые версии MySQL поддерживают нестандартный вызов INSERT для 
одновременной вставки сразу нескольких строк:
INSERT INTO foods VALUES (NULL, 'Oranges', 133, 0, 2, 39),
(HULL, 'Bananas', 122, 0, 4, 29), (NULL, 'Liver', 232, 3, 15, 10)
Хотя поддерживаемый MySQL нестандартный синтаксис удобно использовать для 
быстрого выполнения задач администрирования, не следует без крайней нужды 
пользоваться им при написании приложений. Как правило, следует придерживаться 
стандарта ANSI SQL2 настолько близко, насколько MySQL и mSQL это позволяют. 
Благодаря этому вы получаете возможность перейти в будущем на какую-нибудь 
другую базу данных. Переносимость особенно важна для тех, у кого потребности 
среднего масштаба, поскольку такие пользователи обычно предполагают 
когда-нибудь перейти на полномасштабную базу данных.
MySQL поддерживает синтаксис SQL2, позволяющий вводить в таблицу результаты 
запроса SELECT:
INSERT INTO foods (name, fat)
SELECT food_name, fat_grams FROM recipes
Обратите внимание, что число колонок в INSERT соответствует числу колонок в 
SELECT. Кроме того, типы данных колонок в INSERT должны совпадать с типами 
данных в соответствующих колонках SELECT. И, наконец, предложение SELECT внутри 
команды INSERT не должно содержать модификатора ORDER BY и не может производить 
выборку-из той же таблицы, в которую вставляются данные командой INSERT.
Изменение данных
Добавление новых строк в базу данных - лишь начало ее использования. Если ваша 
база не является базой данных «только для чтения», вам, вероятно, понадобится 
периодически изменять данные. Стандартная команда SQL для изменения данных 
выглядит так:
UPDATE table_name
SET column1=value1, column2=value2, ..., columnN=valueN
[WHERE clause]
В mSQL значение, присваиваемое колонке, должно быть литералом и иметь тот же 
тип, что и колонка. MySQL, напротив, позволяет вычислять присваиваемое значение.
 Можно даже вычислять значение, используя значение другой колонки:
UPDATE years
SET end_year - begin_year+5
В этой команде значение колонки end_year устанавливается равным значению 
колонки begin_year плюс 5 для каждой строки таблицы.
Предложение WHERE
Возможно, вы уже обратили внимание на предложение WHERE. В SQL предложение 
WHERE позволяет отобрать строки таблицы с заданным значением в указанной 
колонке, например:
UPDATE bands
SET lead_singer = 'Ian Anderson'
WHERE band_name = 'Jethro Tull'
Эта команда — UPDATE - указывает, что нужно изменить значение в колонке 
lead_singer для тех строк, в которых band_name совпадает с «Jethro Tull.» Если 
рассматриваемая колонка не является уникальным индексом, предложение WHERE 
может соответствовать нескольким строкам. Многие команды SQL используют 
предложение WHERE, чтобы отобрать строки, над которыми нужно совершить операции.
 Поскольку по колонкам, участвующим в предложении WHERE, осуществляется поиск, 
следует иметь индексы по тем их комбинациям, которые обычно используются.
Удаление
Удаление данных - очень простая операция. Вы просто указываете таблицу, из 
которой нужно удалить строки, и в предложении WHERE задаете строки, которые 
хотите удалить:
DELETE FROM table_name [WHERE clause]
Как и в других командах, допускающих использование предложения WHERE, его 
использование является необязательным. Если предложение WHERE опущено, то из 
таблицы будут удалены все записи! Из всех удаляющих данные команд SQL эта легче 
всего может привести к ошибке.
Запросы
Самая часто используемая команда SQL - та, которая позволяет просматривать 
данные в базе: SELECT. Ввод и изменение данных производятся лишь от случая к 
случаю, и большинство баз данных в основном занято тем, что предоставляет 
данные для чтения. Общий вид команды SELECT следующий:
SELECT column1, column2, ..., columnN
FROM table1, table2, .... tableN
[WHERE clause]
Этот синтаксис, несомненно, чаще всего используется для извлечения данных из 
базы, поддерживающей SQL. Конечно, существуют разные варианты для выполнения 
сложных и мощных запросов, особенно в MySQL. Мы полностью осветим синтаксис 
SELECT в главе 15.
В первой части команды SELECT перечисляются колонки, которые вы хотите извлечь. 
Можно задать «*», чтобы указать, что вы хотите извлечь все колонки. В 
предложении FROM указываются таблицы, в которых находятся эти колонки. 
Предложение WHERE указывает, какие именно строки должны использоваться, и 
позволяет определить, каким образом должны объединяться две таблицы.
Объединения
Объединения вносят «реляционность» в реляционные базы данных. Именно 
объединение позволяет сопоставить строке одной таблицы строку другой. Основным 
видом объединения является то, что иногда называют внутренним объединением. 
 
<<-[Весь Текст]
Страница: из 157
 <<-