Удаление строк из таблицы осуществляется с помощью команды DELETE.
Следующее выражение удаляет все строки таблицы exam_marks .
DELETE * FROM EXAM_MARKS:
В результате таблица становится пустой (после этого она может быть удалена командой drop table).
Для удаления из таблицы сразу нескольких строк, удовлетворяющих некоторому условию, можно воспользоваться предложением where,например;
DELETE * FROM EXAM_MARKS WHERE STUDENT_ID = 103;
Команда updateпозволяет изменять,то есть обновлять значения некоторых или всех полей в существующей строке или строках таблицы. Например, чтобы для всех университетов, сведения о которых находятся в таблице university1, изменить рейтинг на значение 200, можно использовать конструкцию:
UPDATEUNIVERSITY1 SETRATING =200;
Для указания конкретных строк таблицы, значения полей; которых должны быть изменены, в команде updateможно использовать предикат, указываемый в предложении where.
В результате выполнения этого запроса будет изменен peйтинг только у университетов, расположенных в Москве.
Команда updateпозволяет изменять не только один, но и множество столбцов. Для указания конкретных столбцов значения которых должны быть модифицированы, используется предложение set.
Например, наименование предмета обучения 'Математика’ (для него SUBJ_ID=43) должно быть заменено на название 'Высшая математика', при этом идентификационный номер необходимо сохранить, но в соответствующие поля строки таблицы ввести новые данные об этом предмете обучения. Запрос будет выглядеть следующим образом:
Создание объектов базы данных осуществляется с помощью операторов языка определения данных (DDL).
Таблицы базы данных создаются с помощью команды
CREATE TABLE.Эта команда создает пустую таблицу, то есть таблицу, не имеющую строк. Значения в эту таблицу вводятся с помощью команды INSERT.Команда CREATE TABLEопределяет имя таблицы и множество поименованных столбцов в указанном порядке. Для каждого столбца должен быть определен тип и размер. Каждая создаваемая таблица должна иметь, по крайней мере, один столбец. Синтаксис команды CREATE TABLEимеет следующий вид:
CREATE TABLE <Имя таблицы>
(<имя столбца> <тип данных>[(<размер>), ….]);
Типы данных SQL:
CHAR (CHARACTER),
INT (INTEGER),
SMALLINT,
DEC (DECIMAL),
NUMERIC,
FLOAT,
Тип данных, для которого обязательно должен быть указан размер, — это char.
Пример показывает команду, которая позволяет создать таблицу student.
CREATE TABLE STUDENT
(STUDENT_ID INTEGER,
SURNAME VARCHAR(35),
NAME VARCHAR(35),
STIPEND DOUBLE,
KURS INTEGER,
CITY VARCHAR(60),
BIRTHDAY DATE,
UNIV_ID INTEGER);
Операции поиска-выборки (select) данных из таблиц по значениям их полей могут быть существенно ускорены путем использования индексации данных. Индекс содержит упорядоченный (в алфавитном или числовом порядке) список содержимого столбцов или группы столбцов в индексируемой таблице с идентификаторами этих строк (rowid). Для пользователей индексирование таблицы по тем или иным столбцам представляет собой способ логическогоупорядочения значений индексированных столбцов, позволяющего, в отличие от последовательного перебора строк, существенно повысить скорость доступа к конкретным строкам таблицы при выборках, использующих значения этих столбцов. Индексация позволяет находить содержащий индексированную строку блок данных, выполняя небольшое число обращений к внешнему устройству.
При использовании индексации следует, иметь в виду, что управление индексом существенно замедляет время выполнения операций, связанных с обновлением данных (таких, как insertи delete),так как эти операции требуют перестройки индексов.
Индексы можно создавать как по одному, так и по множеству полей. Если указано более одного поля для создания единственного индекса, данные упорядочиваются по значениям первого поля, по которому осуществляется индексирование. Внутри получившейся группы осуществляется упорядочение по значениям второго поля, для получившихся в результате групп осуществляется упорядочение по значениям третьего поля и т.д.
Синтаксис команды создания индекса имеет следующий вид:
28/11/2011
create index <имя индекса> on <имя таблицы> (<имя столбца> [,<имя столбца>]);
При этом таблица должна быть уже создана и содержать столбцы, имена которых указаны в команде создания индекса. Имя индекса, определенное в команде, должно быть уникальным в базе данных. Будучи однажды созданным, индекс является невидимым для пользователя, все операции с ним осуществляет СУБД.