СУБД/лекция 3 семестр 2 — различия между версиями
Vidokq (обсуждение | вклад) (→Выполение запроса) |
Vidokq (обсуждение | вклад) (→Подкючение к БД) |
||
Строка 14: | Строка 14: | ||
else echo "Connect to ".$db." successfull"; | else echo "Connect to ".$db." successfull"; | ||
mysql_select_db($db) or die("cann't connect Mysql".mysql_error()); | mysql_select_db($db) or die("cann't connect Mysql".mysql_error()); | ||
+ | //.......... | ||
+ | // Выполнение запросов и работа программы | ||
//.......... | //.......... | ||
mysql_close($link); | mysql_close($link); | ||
Строка 25: | Строка 27: | ||
* '''mysql_select_db''' выбор базы данных для работы (аналог '''use имя_базы''') | * '''mysql_select_db''' выбор базы данных для работы (аналог '''use имя_базы''') | ||
* mysql_close($link); закрываем соединение (обязательно делать потому как число соединение обычно граничено для серверов) | * mysql_close($link); закрываем соединение (обязательно делать потому как число соединение обычно граничено для серверов) | ||
+ | |||
== Выполение запросов == | == Выполение запросов == | ||
'''1) Вставка записей в базу данных''' | '''1) Вставка записей в базу данных''' |
Версия 23:18, 29 апреля 2014
Содержание |
Литература
Подкючение к БД
<?php $db = "alldb"; $user = "student"; $pass = "studentpass"; $server = "93.125.42.8"; $link = mysql_connect($server, $user, $pass); // Функция подключения к базе данных в переменной link храниться результат подключения if(!$link) die("cann't connect Mysql"); // Проверка успешности подключения else echo "Connect to ".$db." successfull"; mysql_select_db($db) or die("cann't connect Mysql".mysql_error()); //.......... // Выполнение запросов и работа программы //.......... mysql_close($link); ?>
- Задете имя базы
- Имя пользователя
- Пароль
- IP Сервера
- mysql_connect подключение к базе и создание сессии подключения
- Обязательно проверям статус выполения
- mysql_select_db выбор базы данных для работы (аналог use имя_базы)
- mysql_close($link); закрываем соединение (обязательно делать потому как число соединение обычно граничено для серверов)
Выполение запросов
1) Вставка записей в базу данных
$query="INSERT INTO `таблицу` (`указываем поле`,`указываем поле`) VALUES ('любое значение','любое значение')"; $result=mysql_query($query); if($result==true) { echo "Успешно!"; } else { echo "Ошибка!<br>".mysql_error(); }
То есть вставка производится функцией INSERT. Если все прошло успешно, то mysql вернет результат true, или иначе — false.
Полей можно указывать хоть сколько, главное чтобы все они существовали в БД. То есть, к примеру существует таблица в которой есть поля «name» , «surname» и «city».
$query="INSERT INTO `users` (`name`,`surname`,`city`) VALUES ('Ruslan','Huzin','Kokshetau')"; $result=mysql_query($query); if($result==true) { echo "Успешно!"; } else { echo "Ошибка!<br>".mysql_error(); }
2) Удаление записей из базы данных
$query="DELETE FROM `users` WHERE `name`='Ruslan' "; $result=mysql_query($query); if($result==true) { echo "Успешно!"; } else { echo "Ошибка!<br>".mysql_error(); }
3) Изменение значений в базе данных
Также мы можем вносить изменения в уже существующие записи в таблице. К примеру нам надо заменить значение столбца name в строке, где столбец surname имеет значение Huzin.
$query="UPDATE `users` SET `name`='myname' WHERE `surname`='Huzin' "; $result=mysql_query($query); if($result==true) { echo "Успешно!"; } else { echo "Ошибка!<br>".mysql_error(); }
4) Получение значений из базы данных
Теперь самое интересное) Раз мы записали что-то, то ведь должны и получить обратно?)))
К примеру нам нужно достать из таблицы users всю строку где столбец name равен Ruslan.
Для этого нам потребуется чуть другой код, нежели в первых примерах.
$query="SELECT * FROM WHERE `name`='Ruslan' "; $result=mysql_query($query); if($result==true) { echo "Успешно!"; } else { echo "Ошибка!<br>".mysql_error(); } $data=mysql_fetch_array($result); /* Теперь в переменной хранятся данные из таблицы */
Тут нам потребовалась еще одна функция, для записи выбранных данных в переменную (массив) на php.
Для того что обратиться к выбранной строке, мы пишем так:
$data['имя столбца']
то есть, чтобы достать фамилию из выбранной строки (где имя было Ruslan), мы на вывод должны написать:
echo $data['surname'];
А при выборке из таблицы, писали SELECT *, эта звездочка означает что нужно выбрать все столбцы из строки.
Если нам надо, к примеру, выбрать только surname, пишем SELECT `surname`.
А для выборки сразу нескольких строк из таблицы, потребуется еще и цикл для их вывода. Это в том случае, если к примеру, строк со столбцом Ruslan будет несколько.
$query="SELECT * FROM WHERE `name`='Ruslan' "; $result=mysql_query($query); while($data=mysql_fetch_array($result)) { echo $data['name']."<br>".$data['surname']."<hr>"; }
Теперь на экран выведутся все строки у которых столбец name равен значению Ruslan.
Классы построения графиков
- Скачиваем класс