Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Заполним таблицу «Клиенты»




INSERT INTO Клиенты

VALUES (NULL, 'Петров И.И.', '1234567', 'Москва, ул. Пахарей 17-5'),

(NULL, 'Иванов П.П.', '8901234', 'Москва, ул. Слесарей 22-1д-2'),

(NULL, 'Сумкин Ф.Б.', '5678901', 'МО, Химки, ул. Улицы 42-123'),

(NULL, 'Сидоров С.М.', '4145252', 'Москва, ул. Бауманская 212-2'),

(NULL, 'Пушкин С.А.', '9982989', 'Магадан, ул. Пушкина 12-44');

 

Допустим, мы не хотим, чтобы в нашу таблицу могли ввести второго человека с такой же фамилией и инициалами.

Для этого Модифицируем таблицу «Клиенты», введя уникальный индекс, который запретит вводить повторяющиеся значения по столбцу «ФИО Клиента».

Для начала удалим уже существующий НЕуникальный индекс.

 

ALTER TABLE Клиенты DROP INDEX `ixClient`;

Добавим уникальный индекс, накладывающий ограничение на столбец «ФИО Клиента»:

ALTER TABLE Клиенты ADD CONSTRAINT `ixName` UNIQUE INDEX (`ФИО Клиента`);

Теперь, если попробовать ввести повторяющееся значение фамилии, то команда не пройдет.

INSERT INTO Клиенты

VALUES (NULL, 'Петров И.И.', '4440102', 'Москва, ул. Сезам 1-5');

Предположим, у нас есть список фамилий, которые необходимо ввести и среди этого списка могут встречаться повторяющиеся. В этом случае ни одна из фамилий списка не будет введена. Одна единственная повторяющаяся фамилия отменит всю команду. Чтобы этого не происходило, и все фамилии благополучно записались в БД проигнорировав повтор, нужно использовать команду IGNORE. (Повторенная фамилия записана не будет, зато запишутся все остальные.)

INSERT IGNORE INTO Клиенты

VALUES (NULL, 'Петров Т.П.', '4440102', 'Москва, ул. Сезам 1-5'),

(NULL, 'Сидорова А.К.', '4145252', 'Москва, ул. Бауманская 212-2'),

(NULL, 'Пушкин С.А.', '9982989', 'Магадан, ул. Пушкина 12-44');

Проверим правильность заполнения.

SELECT * FROM Клиенты;

Как мы видим, второй «Пушкин С.А.» записан не был.

Исправим инициалы первого (и единственного в нашей БД) Пушкина оператором UPDATE:

 

UPDATE Клиенты -- Обновить таблицу клиенты

SET `ФИО Клиента`= 'Пушкин А.С.' -- Установить «Пушкин А.С» в столбце «ФИО Клиента»

WHERE `ФИО Клиента` = 'Пушкин С.А.'; -- У тех строк, где «ФИО Клиента» равняется «Пушкин С.А.»

Можно было сделать то же самое, и другим способом:

UPDATE Клиенты -- Обновить таблицу клиенты

SET `ФИО Клиента`= 'Пушкин А.С.' -- Установить «Пушкин А.С» в столбце «ФИО Клиента»

WHERE `Код клиента` = 5; -- У тех строк, где «Код Клиента» равняется 5

 

Теперь удалим последнего Клиента из Таблицы.

DELETE FROM Клиенты

WHERE `Код Клиента` = 8;

*Чтобы удалить ВСЕ строки из таблицы следует написать «DELETE FROM Клиенты;»

 

Поделиться:





Читайте также:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...