Лекции     Книги     Рефераты    
Диплом, курсовая на заказ

Что такое БД и с чем это едят?

news date Авг.19.2008    categories Web-программирование > PHP+mySQL    comments (2)

БД (база данных) — наиболее удобный способ организации больших количсетв данных. Базами данных, являются, например, таблицы, сделанные в программе Excel (довольно примитивный пример).

Любая база данных состоит из таблиц. Таблица — это такая составляющая БД, которая хранит в себе данные объектов некоторого конкретного типа (например, таблица с информацией о работниках предприятия). БД обычно состоит из нескольких таблиц (например, таблица с работниками, таблица со специальностями, с описью инвентаря и так далее).

Таблица может содержать в себе неограниченное количество записей, которые должны ей соответствовать. У таблицы есть заголовки — в них описывается, какие данные хранятся в записях и какого они типа (например, фамилия, имя, номер договора, размер оклада и так далее).

Каждая запись таблицы содержит в себе данные, относящиеся к конкретным заголовкам (фамилия и имя конкретного сотрудника, его размер оклада и так далее).

При программировании на PHP часто используется СУБД (система управления базами данных) под названием MySQL. MySQL — СУБД, использующая для управления SQL (Structured Query Language, структурированный язык запросов) запросы. Запросы представляют из себя строку (а иногда несколько строк). Сейчас я расскажу о наиболее распространённых SQL–запросах. Мы научимся составлять такие запросы под свои нужды.

CREATE TABLE — запрос для создания таблицы

Данный запрос выглядит примерно так:

CREATE TABLE `название_таблицы` (
`колонка1` ТИП_ДАННЫХ (длина) КЛЮЧ1 КЛЮЧ2,
`колонка2` ТИП_ДАННЫХ (длина) КЛЮЧ1 КЛЮЧ2,
PRIMARY KEY (`ключевая_колонка`)
);

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

Типы данных бывают разными, вот краткий неисчерпыавющий список типов данных

  • VARCHAR — строковое значение
  • INT — целочисленное значение
  • TEXT — текстовое значение, длиннее, чем VARCHAR
  • FLOAT — число с плавающей точкой
  • DATETIME — дата и время
  • BLOB — любой объект (то бишь файл)

Длину задавать необязательно. Задаётся в байтах.

Ключи — есть несколько ключей, позволяющих определить некоторые свойства значений в этих колонках:

  • NOT NULL — значение не должно быть нулевым (то бишь пустым)
  • AUTO_INCREMENT — значение будет увеличиваться на один каждый раз при добавлении новой записи.

PRIMARY KEY используется для задания ключевой колонки, по которой будет происходить индексация таблицы. Колонка должна иметь целочисленный тип данных и иметь ключ AUTO_INCREMENT.

Например, запрос

CREATE TABLE `users` (
`id` INT (11) NOT NULL AUTO_INCREMENT,
`username` VARCHAR (30) NOT NULL,
`password` VARCHAR (30) NOT NULL,
PRIMARY KEY (`id`)
);

Создаст таблицу с колонками id, username и password. Колонка id будет ключевой.

INSERT INTO — запрос для вставки данных в таблицу

Вот примерный вид данного запроса:

INSERT INTO `название_таблицы` (`колонка1`, `колонка2`)
VALUES (‘значение_в_колонку1′, ‘значение_в_колонку2′);

Например, запрос

INSERT INTO `users` (`username`, `password`)
VALUES (‘john’, ‘doe’);

вставит в таблицу, созданную предыдущим запросом, запись с id = 1, с username “john” и password “doe”.

UPDATE — ззапрос для изменения данных в таблице

Вот как выглядит данный запрос:

UPDATE `название_таблицы`
SET `колонка1` = ‘новое значение в колонку 1′, `колонка2` = ‘новое значение в колонку 2′
WHERE логическое_выражение;

Запрос для примера:

UPDATE `users` SET `password` = ‘newjohnpass’ WHERE `id` = ’1′;

Логические выражения составляются так:
`название_колонки` логический_оператор ‘значение’

Логический оператор может быть:

  • = (полное соответствие значения в колонке с указанным значением)
  • != (несоответствие значения в колонке с указанным значением)
  • LIKE (содержание в значении в колонке указанного значения)

Ну, и напоследок, запрос SELECT для получения информации из БД

А выглядит он так:

SELECT поле1, поле2 FROM название_таблицы WHERE логическое_условие LIMIT колво_записей;

Например, запрос для получения всех username’ов полльзователей из таблицы users будет выглядеть так:

SELECT username FROM users;

WHERE и LIMIT — необязательные добавления, опущены в предыдущем примере.

Кстати, вместо перечисления всех полей (если это нужно) используется знак звёздочки. Например:

SELECT * FROM users WHERE username = john LIMIT 1;

Данный пример отдаст всю информацию о пользователе с username’ом john из таблицы users.

На сегодня всё. Подведём итоги: сегодня мы познакомились с принципами работы БД и с основными SQL–запросами. В следующем уроке мы научимся применять полученные знания при программировании на PHP.

Обсуждения

2 комментариев к “Что такое БД и с чем это едят?”
  1. shedy пишет:

    Извиняюсь, что не по теме, но может подскажете где можно найти информацию по проектированию БД?

  2. garlic пишет:

    В Интернет, дружище. Можно начать с википедии, погуглить названия книг, а затем и сами книги…

Добавить комментарий

Вы должны войти



© 2009 - 2010 | Webteach.ru | Образовательный портал