Архив рассылки -программирование на PHP




И связать их внешним ключом для целостности


И связать их внешним ключом для целостности. Но сейчас наша задача состоит в ином, поэтому простите мне мой топорный подход.

Нам надо добавить в нашу электронную библиотеку книгу "Алексей Толстой. 'Золотой ключик или приключения Буратино'".

Как бы мы это сделали, если бы база данных управлялась человеческим голосом?

Наверное, что-то вроде: "добавить в таблицу КНИГИ название и дату покупки: А. Толстой. 'Золотой ключик...', 27-е августа 2001 года".

Вот мы так и запишем, а SQL с удовольствием нас поймет. Только по-английски.

insert into books(book_name, book_date) values("А.Толстой. 'Золотой ключик или приключения Буратино'","2001-08-27 00:00:00");

Вот так. Почти по-человечески.

Следующей книгой для контраста добавим "А.Платонов. 'Котлован'", неизвестно когда подаренную нам любимым преподавателем.

insert into books (book_name, book_comm) values("А.Платонов. 'Котлован'", "Подарена Пустоваловым Петром Семеновичем");

Ну и еще одну...

insert into books(book_name) values('Поваренная книга');

Вот так. Теперь у нас в базе есть аж три книги. Попробуем в этом убедиться?

Как мы попросим нашу базу выбрать нам все, что в ней есть, без каких-либо условий?

По-русски это бы могло звучать так: "Выбери все из таблицы книг".

Так и напишем (звездочкой в SQL обозначается любой набор параметров, символов и прочего, как почти во всем компьютерном):

select * from books;

И получаем список наших книг. Я не буду приводить тут полностью ответ MySQL, т.к. слишком широкая табличка получилась.

Мы сейчас это подправим. Попросим выбрать только названия книг:


select book_name from books; +------------------------------------------------------+ | book_name | +------------------------------------------------------+ | А.Толстой. 'Золотой ключик или приключения Буратино' | | А.Платонов. 'Котлован' | | Поваренная книга | +------------------------------------------------------+ 3 rows in set (0.00 sec)

Понятно, не так ли?

А теперь присовокупим их порядковые номера:

select book_id, book_name from books; +---------+------------------------------------------------------+ | book_id | book_name | +---------+------------------------------------------------------+ | 1 | А.Толстой. 'Золотой ключик или приключения Буратино' | | 2 | А.Платонов. 'Котлован' | | 3 | Поваренная книга | +---------+------------------------------------------------------+ 3 rows in set (0.01 sec)

Вот так просто.

Теперь давайте попросим нашу понятливую БД выдать нам книгу под номером 2:

select book_id, book_name from books where book_id=2; +---------+----------------------+ | book_id | book_name | +---------+----------------------+ | 2 | А.Платонов. 'Котлован' | +---------+----------------------+ 1 row in set (0.01 sec)

Ты смотри, нашел!

А если мы хотим все книги от номера 2 и больше?

select book_id, book_name from books where book_id>1; +---------+------------------------+ | book_id | book_name | +---------+------------------------+ | 2 | А.Платонов. 'Котлован' | | 3 | Поваренная книга | +---------+------------------------+ 2 rows in set (0.00 sec)

Нате!

Ну хорошо, давайте зададим в запросе что-нибудь похитрее.









Начало    Назад    Вперед




Книжный магазин