Розробка систем управління базою даних MySQL

[ виправити ] текст може містити помилки, будь ласка перевіряйте перш ніж використовувати.

скачати

Міністерство освіти Російської Федерації

Виксунський металургійний технікум ім.А.А.Козерадского

Розробка систем управління базою даних MySQL

Звіт з практики

ВП 230103.012.002.00

Керівник проекту

Чалишев В.В.

Проект розробив

Короткова Ю.С.

Перевірив

Пантелєєв С.В.

г.Викса

2007

Зміст

Анотація

Введення

1 Аналіз технічного завдання

2 Розробка алгоритму

3 Розробка програми

4 Блок-схема

5 Інструкції з установки і використання

Висновок

Список використаної літератури

Анотація

Дана пояснювальна записка розповідає про розробку системи управління базою даних MySQL, цілі її створення і способи використання. Прочитавши цю пояснювальну записку, користувач зможе створити свою базу даних, і, відповідно, зможе їй управляти, доклавши при цьому мінімальні зусилля.

Введення

PHP - мова написання сценаріїв, впроваджений в HTML. Багато чого з синтаксису запозичене з С, Java, Perl, з додаванням специфічних для PHP можливостей. Завдання мови полягає в тому, щоб дати можливість Web-розробникам легко і швидко створювати динамічно змінні html-сторінки.

Написання Web-сторінки, що працює з базою даних, неймовірно проста. В даний час підтримуються наступні бази даних: Oracle, Adabas D, Sybase, FilePro, mSQL, Velocis, MySQL, Informix, Solid, dBase, ODBC, Unix dbm, PostgreSQL.

Останнім часом у розробників найбільш популярна СУБД MySQL.

MySQL - компактний багатопоточний сервер баз даних. MySQL характеризується великою швидкістю, стійкістю і легкістю у використанні.

MySQL є ідеальним рішенням для малих і середніх додатків. Ісходникі сервера компілюються на безлічі платформ. Найбільш повно можливості сервера проявляються на Unix-серверах, де є підтримка багатопоточності, що дає значний приріст продуктивності.

MySQL дійсно дуже швидкий сервер, але для досягнення цього розробникам довелося пожертвувати деякими вимогами до реляційних СУБД.

У своїй роботі я відобразила, як управляти базою даних MySQL через мову програмування PHP 4.

1 Аналіз технічного завдання

Тема проекту «Розробка систем управління базою даних MySQL» має на увазі під собою створення скрипта на мові програмування php 4, де управління базою даних організовано за схемою "нічого зайвого", тому і відсутні деякі функції, якими оснащені база даних MySQL.

Суть програми буде полягати в наступному: користувач створює якусь базу даних, і при використанні скрипта він може виконувати наступні функції:

  • перегляд створеної бази даних;

  • зміна значення в рядках таблиці;

  • додавання рядка у вже існуючу таблицю, або додавання нової таблиці;

  • видалення таблиці;

Також в скрипт включений файл конфігурації, де можна ввести унікальний код і захистити базу даних паролем.

Для реалізації даного проекту застосовується мова програмування PHP (версії 4.0).

2 Розробка алгоритму

На даному етапі розроблено кілька алгоритмів, за якими можна вирішити це завдання.

  1. Розробити систему управління базою даних таким чином, щоб вона виконувала 4 основні функції: перегляд, зміна даних в таблицях, додавання таблиць та їх видалення.

  2. Другий варіант є модифікацією першого. До вже існуючої системи додати захист бази даних, тобто ввести пароль для кожного користувача.

  3. Третій варіант є доопрацюванням другого. Якщо користувач захоче роздрукувати базу даних, то можливий висновок документа на друк.

Був вибраний третій варіант реалізації програми, тому що він більш повний і володіє всіма важливими функціями управління базою даних. Він також є найбільш практичним і працездатним.

3 Розробка програми

У програмі використовується 6 файлів.

Файл index.html - початковий файл, він використовується при запуску.

<? Php

include ('inc / config.php');

include ('inc / function.php');

include ('inc / header.php');

print "<div align=\"center\" class=\"tabtop\"> Приклад системи управління базою даних </ div>";

list_tab ('connect');

if (@ $ action == "connect") {

$ Link = mysql_pconnect ($ mysql_host, $ mysql_login, $ mysql_password) or die ("Не можу підключитися до MySQL ");

mysql_select_db ("$ database") or die ("$ database НЕ існує! ");

$ Result = mysql_query ("SELECT * FROM` $ db `") or die ("Помилка запиту ");

if ($ myrow = mysql_fetch_array ($ result))

{

echo "<table bgcolor=\"#F3E7CD\"> <tr class=\"tabletext\"> <td>";

echo "<table width=\"100%\" rules=\"all\" align=\"center\" bgcolor=\"#ffffff\" bolder=\"4\"> \ n";

echo "<tr>

<td> Н о з в а н і е </ td>

<td> І з д а т е л ь с т в о </ td>

<td> Г о д в и п у с к а </ td>

</ Tr> \ n ";

do

{

print "<tr bgcolor=\"#111111\">

<td align=\"CENTER\" class=\"taband\"> $ myrow [nazvanie] </ td>

<td align=\"CENTER\" class=\"taband\"> $ myrow [izdatelstvo] </ td>

<td align=\"CENTER\" class=\"taband\"> $ myrow [god_vipuska] </ td> </ tr>

";}

while ($ myrow = mysql_fetch_array ($ result));

echo "</ table> \ n";

echo "</ td> </ tr> </ table>";}

print "<a target=\"blank\" href=\"/services/print.php?db=$db\"> Версія для друку </ a> ";

}?>

Файл admin.php-в цьому файлі проводиться безпосередньо обробка інформації з бази даних, виконання всіх основних команд управління базою даних.

<? Php

include ('inc / config.php');

include ('inc / function.php');

include ('inc / header.php');

switch (@ $ actions) {

case ("add"):

print "<div align=\"center\" class=\"tabtop\"> Додати рядок у таблицю </ div>";

list_tab ('add');

print "<hr>";

print "<div align=\"center\" class=\"tabtop\"> Створити нову таблицю </ div>";

print "<form action=\"?actions=add&s=2\" method=\"post\">

<table>

<tr class=\"tabletext\"> <td> Ім'я таблиці (відповідно імені групи): </ td> <td> <input type=\"text\" name=\"tablename\"> </ td> < / tr>

<tr> <td colspan=\"2\" align=\"CENTER\"> <input type=\"submit\" value=\"Создать табліцу\"> </ td> </ tr>

</ Table>

</ Form> ";

if (isset ($ tablename) & & @ $ s == 2) {

$ Link = mysql_pconnect ($ mysql_host, $ mysql_login, $ mysql_password) or die ("Не можу підключитися до MySQL");

mysql_select_db ("$ database") or die ("$ database не існує!");

$ Sql = 'CREATE TABLE `. $ Tablename.` ('

. '`Id` INT (11) UNSIGNED NOT NULL AUTO_INCREMENT,'

. '`Nazvanie` VARCHAR (100) NOT NULL,'

. '`Izdatelstvo` VARCHAR (100) NOT NULL,'

. '`God_vipuska` VARCHAR (100) NOT NULL,'

. 'PRIMARY KEY (`id`)'

. ')';

$ Result = mysql_query ($ sql);

print "<meta http-equiv=\"refresh\" content=\"2 url=?action=add&db=$tablename\">";

}

if (isset ($ snazvanie) & & @ $ s == 1) {

$ Link = mysql_pconnect ($ mysql_host, $ mysql_login, $ mysql_password) or die ("Не можу підключитися до MySQL");

mysql_select_db ("$ database") or die ("$ database не існує!");

$ Sql = "INSERT INTO` $ db `(nazvanie, izdatelstvo, god_vipuska) VALUES

('$ Snazvanie', '$ sizdatelstvo', '$ sgod_vipuska') ";

$ Result = mysql_query ($ sql);

}

break;

case ("edit"):

print "<div align=\"center\" class=\"tabtop\"> Змінити дані таблиці </ div>";

list_tab ('update');

break;

case ("del"):

print "<div align=\"center\" class=\"tabtop\"> Видалити таблицю </ div>";

list_tab ('delete');

break;

case ("config"):

print "<div align=\"center\" class=\"tabtop\"> Змінити параметри скрипта </ div>";

print "

<form action=\"\" method=\"post\">

<table align=\"CENTER\" width=\"640\">

<tr class=\"tabletext\"> <td> Ім'я користувача бази даних: </ td>

<td> <input type=\"text\" name=\"new_mysql_login\" value=\"$mysql_login\"> </ td> </ tr>

<tr class=\"tabletext\"> <td> Пароль для доступу до бази даних (за замовчуванням порожній): </ td>

<td> <input type=\"text\" name=\"new_mysql_password\" value=\"$mysql_password\"> </ td> </ tr>

<tr class=\"tabletext\"> <td> Ім'я бази даних: </ td>

<td> <input type=\"text\" name=\"new_database\" value=\"$database\"> </ td> </ tr>

<tr class=\"tabletext\"> <td colspan=\"2\" align=\"CENTER\"> <input type=\"submit\" value=\"Ізменіть\"> </ td> </ tr>

</ Table>

</ Form> ";

if (isset ($ new_mysql_host) & & isset ($ new_mysql_login) & & isset ($ database))

{

$ Config = "<? Php

\ $ Mysql_host = \ "". $ New_mysql_host. "\";

\ N

\ $ Mysql_login = \ "". $ New_mysql_login. "\";

\ N

\ $ Mysql_password = \ "". $ New_mysql_password. "\";

\ N

\ $ Database = \ "". $ New_database. "\";

?> ";

$ Fp = fopen ("inc / config.php", "w +");

fwrite ($ fp, $ config);

fclose ($ fp);

print "<meta http-equiv=\"refresh\" content=\"0 url=admin.php?actions=config\">";

}

break;

}

/ / Додавання таблиці

if (@ $ action == 'add' & & isset ($ db)) {

print "<form action=\"?actions=add&s=1\" method=\"post\">

<table>

<tr> <td colspan=\"2\" class=\"tabtop\" align=\"CENTER\"> <b> Додавання рядка в

таблицю $ db </ b> </ td> </ tr>

<tr class=\"tabletext\"> <td> Назва книги: </ td> <td> <input type = \ "text \"

name = \ "snazvanie \"> </ tr>

<tr class=\"tabletext\"> <td> Видавництво: </ td> <td> <input type=\"text\" name=\"sizdatelstvo\"> </ tr>

<tr class=\"tabletext\"> <td> Рік випуску: </ td> <td> <input type=\"text\" name=\"sgod_vipuska\"> </ tr>

<tr class=\"tabletext\"> <td colspan=\"2\" align=\"CENTER\"> <input type=\"submit\" value=\"Добавіть\"> </ td> </ tr> </ table>

<input type=\"hidden\" name=\"db\" value=\"$db\">

</ Form> ";}

/ / Видалення таблиці

if (@ $ action == "delete")

{

$ Link = mysql_pconnect ($ mysql_host, $ mysql_login, $ mysql_password) or die ("Не можу підключитися до MySQL");

mysql_select_db ("$ database") or die ("$ database не існує!");

@ $ Result = mysql_query ("DELETE FROM` $ db `");

if ($ result == TRUE) {

$ Sql = mysql_query ("DROP TABLE` $ db `");

}

print "<meta http-equiv=\"refresh\" content=\"0 url=admin.php?actions=del\">";

}

/ / Оновлення даних у таблиці

if (@ $ action == "update") {

$ Link = mysql_pconnect ($ mysql_host, $ mysql_login, $ mysql_password) or die ("Не можу підключитися до MySQL");

mysql_select_db ("$ database") or die ("$ database не існує!");

$ Result = mysql_query ("SELECT * FROM` $ db `") or die ("Помилка запиту !!!");

$ Myrow = mysql_fetch_array ($ result);

echo "<div align=\"center\" class=\"tabtop\"> Внести зміни в таблицю $ db </ div>";

echo "<table> <tr class=\"tabletext\"> <td>";

echo "<table border=\"0\" cellspacing=\"1\"> \ n <form action=\"?submit=Submit&db=$db\" method=\"POST\">";

$ I = 0;

do

{

print "

<tr>

<td> $ myrow [0]. </ td> <td>

<input type=\"text\" size=\"14\" name=\"nazvanie[$i]\" value=\"$myrow[nazvanie]\"> </ td>

<input type=\"hidden\" name=\"id\" value=\"$myrow[0]\"> <td align=\"CENTER\">

<input type=\"text\" size=\"2\" name=\"izdatelstvo[$i]\" value=\"$myrow[izdatelstvo]\"> </ td>

<td align=\"CENTER\"> <input type=\"text\" size=\"3\" name=\"god_vipuska[$i]\" value=\"$myrow[god_vipuska]\"> < / td> </ tr> ";

$ I + +;}

while ($ myrow = mysql_fetch_array ($ result));

echo "

<tr> <td colspan=\"12\" align=\"center\"> <input type=\"submit\" name=\"submit\" value=\"Обновіть\"> </ td> </ tr> </ form> </ table> \ n ";

echo "</ td> </ tr> </ table>";

}

if (@ $ submit == "Оновити") {

$ Link = mysql_pconnect ($ mysql_host, $ mysql_login, $ mysql_password) or die ("Не можу підключитися до MySQL");

mysql_select_db ("$ database") or die ("$ database не існує!");

$ Ids = $ id;

do {

$ Id -;

$ Result = mysql_query ("UPDATE` $ db `SET nazvanie = '$ nazvanie [$ id]', izdatelstvo = '$ izdatelstvo [$ id]', god_vipuska = '$ god_vipuska [$ id]' WHERE id = $ ids" );

$ Ids -;

} While ($ id> = 1);

print "<meta http-equiv=\"refresh\" content=\"0 url=admin.php?action=update&db=$db\">";

}

include ('inc / footer.php');

?>

Файл konfig.php-задає основні параметри бази даних: шлях до бази даних, ім'я користувача бази, пароль для доступу до бази даних, і ім'я самої бази даних.

<? Php

$ Mysql_host = "localhost";

$ Mysql_login = "root";

$ Mysql_password = "";

$ Database = "knigi";?>

Файл function.php-замінює англійський алфавіт, що використовується в базі даних, на російську методом заміни.

<?

function authorization ($ username, $ pass) {

include ("inc / config.php");

$ Out = FALSE;

if (strtolower ($ username) == strtolower ($ adminlogin) & & $ pass == $ adminpass)

{

$ Out = TRUE;

}

return $ out;

}

function list_tab ($ act) {

include ("inc / config.php");

function replace_ru_en ($ tab_rows) {

$ Tab_rows = str_replace ("a", "А", $ tab_rows);

$ Tab_rows = str_replace ("b", "Б", $ tab_rows);

$ Tab_rows = str_replace ("с", "Ц", $ tab_rows);

$ Tab_rows = str_replace ("d", "Д", $ tab_rows);

$ Tab_rows = str_replace ("e", "Е", $ tab_rows);

$ Tab_rows = str_replace ("f", "Ф", $ tab_rows);

$ Tab_rows = str_replace ("g", "Г", $ tab_rows);

$ Tab_rows = str_replace ("h", "Х", $ tab_rows);

$ Tab_rows = str_replace ("i", "І", $ tab_rows);

$ Tab_rows = str_replace ("j", "Ж", $ tab_rows);

$ Tab_rows = str_replace ("k", "К", $ tab_rows);

$ Tab_rows = str_replace ("l", "Л", $ tab_rows);

$ Tab_rows = str_replace ("m", "М", $ tab_rows);

$ Tab_rows = str_replace ("n", "Н", $ tab_rows);

$ Tab_rows = str_replace ("o", "О", $ tab_rows);

$ Tab_rows = str_replace ("p", "П", $ tab_rows);

$ Tab_rows = str_replace ("q", "Ш", $ tab_rows);

$ Tab_rows = str_replace ("r", "Р", $ tab_rows);

$ Tab_rows = str_replace ("s", "С", $ tab_rows);

$ Tab_rows = str_replace ("t", "Т", $ tab_rows);

$ Tab_rows = str_replace ("u", "У", $ tab_rows);

$ Tab_rows = str_replace ("v", "В", $ tab_rows);

$ Tab_rows = str_replace ("w", "В", $ tab_rows);

$ Tab_rows = str_replace ("x", "Х", $ tab_rows);

$ Tab_rows = str_replace ("y", "У", $ tab_rows);

$ Tab_rows = str_replace ("z", "З", $ tab_rows);

return $ tab_rows;

}

$ Link = mysql_pconnect ($ mysql_host, $ mysql_login, $ mysql_password) or die ("Не можу підключитися до MySQL");

mysql_select_db ("$ database") or die ("$ database не існує!");

$ Result = mysql_list_tables ("$ database", $ link); print "

<p align=\"center\"> <form action=\"?\" method=\"get\">

<input type=\"hidden\" name=\"action\" value=\"$act\">

<select name=\"db\"> \ n ";

while ($ tab_rows = mysql_fetch_row ($ result)) {

print "<option value=\"$tab_rows[0]\">". replace_ru_en ($ tab_rows [0 ])."</ option> \ n ";

}

print "</ select>

<input type=\"submit\" value=\"Пошел\"> </ form> </ p> ";

}

?>

Файл hearder.php - зовнішній вигляд і оформлення сторінок.

<?

@ Print "

<html>

<head>

</ Script>

<title> Розробка системи управління базою даних </ title>

</ Head>

<link href=\"style.css\" rel=\"stylesheet\" type=\"text/css\">

<body bgcolor=\"recbg.jpeg\" topmargin=\"10\" marginwidth=\"0\" marginheight=\"10\">

<table width=\"100%\" cellspacing=\"1\" cellpadding=\"0\" align=\"CENTER\">

<tr> <td bgcolor=\"E0FFFF\">

<table width=\"100%\" cellspacing=\"5\" cellpadding=\"0\">

<tr> <td>

<table width=\"100%\" cellspacing=\"0\" cellpadding=\"0\">

<tr>

<td{cursor: n-resize;}>

<table cellspacing=\"0\" cellpadding=\"0\">

<tr> <td>

<table cellspacing=\"0\" cellpadding=\"5\">

<tr>

<a href=\"/index.php\" class=\"blink\"> Перегляд </ a> <br> <br>

<a href=\"/admin.php?actions=add\" class=\"blink\"> Додати </ a> <br> <br>

<a href=\"/admin.php?actions=edit\" class=\"blink\"> Змінити </ a> <br> <br>

<a href=\"/admin.php?actions=del\" class=\"blink\"> Видалити </ a> <br> <br>

<a href=\"/admin.php?actions=config\" class=\"blink\"> Конфіг </ a> <br> <br>

</ Tr>

<td> </ td>

</ Table>

</ Td>

<td align=\"right\" class=\"tabletext\">

</ Td>

</ Tr>

</ Table>

</ Td>

</ Tr>

<tr> <td>

<table width=\"100%\" cellspacing=\"0\" cellpadding=\"5\">

<tr class=\"intable\">

<td bgcolor=\"#F3E7CD\" align=\"center\">

";

?>

Файл print.php - виводить базу даних на друк.

<? Php

include ("../ inc / config.php ");

include ("../ inc / function.php ");

Error_Reporting (E_ALL & ~ E_NOTICE);

print "

</ Head>

<body onload=\"window.print()\">

";

$ Link = mysql_pconnect ($ mysql_host, $ mysql_login, $ mysql_password) or die ("Не можу підключитися до MySQL");

mysql_select_db ("$ database") or die ("$ database не існує!");

@ $ Result = mysql_query ("SELECT * FROM` $ db `") or die ("Помилка запиту");

if ($ myrow = mysql_fetch_array ($ result))

{

echo "<table bgcolor=\"#000000\"> <tr> <td>";

echo "<table border=\"1\" cellspacing=\"1\"> \ n";

echo "<tr bgcolor=\"#99ccff\" align=\"CENTER\" class=\"tabletext\">

<td> Назва </ td>

<td> Видавництво </ td>

<td> Рік випуску </ td> </ tr> \ n ";

do

{

print "<tr class=\"tabletext\" bgcolor=\"#ffffff\">

<td> $ myrow [nazvanie] </ td>

<td align=\"CENTER\"> $ myrow [izdatelstvo] </ td>

<td align=\"CENTER\"> $ myrow [god_vipuska] </ td> </ tr>

";

}

while ($ myrow = mysql_fetch_array ($ result));

echo "</ table> \ n";

echo "</ td> </ tr> </ table>";

}

print "<input type=\"submit\" value=\"Печать\" onclick=\"window.print()\">";

mysql_close ($ link);

print "

</ Body>

</ Html> ";

?>

4 Блок-схема

5 Інструкції з установки і використання

Для того щоб дана програма працювала у Вас на комп'ютері необхідно встановити серверне програмне забезпечення (наприклад, Денвер). Далі все по пунктах.

  1. Створюємо каталог і даємо йому ім'я (тобто папку в папці home)

  2. У каталозі створюємо папку www

  3. Запускаємо Денвер

  4. Виробляємо перевірку бази даних MySQL.

  5. Відкриваємо браузер (у ньому прописуємо домашній URL. Домашній URL такий: http: / / ім'я свого каталогу /)

Висновок

Даний проект був реалізований на мові програмування PHP, який адаптований під Інтернет. Цей проект може бути використаний для вбудовування в сайт. Призначення його це зберігання інформації в одному місці, а також впорядкування даних однієї тематики.

Список використаних джерел

  1. Підручник php - 2002 р.

  2. Самовчитель по PHP.

  3. Підручник PHP4-2004 р.

Додати в блог або на сайт

Цей текст може містити помилки.

Програмування, комп'ютери, інформатика і кібернетика | Звіт з практики
88.4кб. | скачати


Схожі роботи:
Розробка системи управління базою даних будівельної фірми
Система управління базою даних
Проектування системи управління базою даних
Проектування створення і управління базою даних Палітурна майстерня в пакеті MS Access
Робота з базою даних в MS Access
Розвиток систем управління базами даних
Організація та застосування мікропроцесорних систем обробки даних і управління
Розробка систем управління якістю товарів
Розробка проекту управління базами даних для процесу Облік ремонту та ТО автотранспорту
© Усі права захищені
написати до нас