21-мавзу: PHPда MySQL маълумотлар базасини бошқариш тизими билан ишлаш. Маърузачи: техника фанлари бўйича фалсафа доктори, Маҳманов Ориф Қудратович
Мултимедиа технологиялари кафедраси
МУҲАММАД АЛ-ХОРАЗМИЙ НОМИДАГИ
ТОШКЕНТ АХБОРОТ ТЕХНОЛОГИЯЛАРИ УНИВЕРСИТЕТИ
Режа: - Маълумотлар базасини бошқариш тизимлари.
- MySQL ҳақида тушунча.
- Маълумотлар базасида бажариладиган асосий амаллар.
Маълумотлар базасини бошқариш тизимлари
Номи
|
Компания
|
1-версия чиққан вақти
|
Охирги версия
|
Охирги версия чиққан вақти
|
Лицензия
|
Oracle DB
|
Oracle Corporation
|
1979-11
|
18.1.0.0
|
2018-07-23
|
Proprietary
|
PostgreSQL
|
PostgreSQL Global Development Group
|
1989-06
|
11.2
|
2019-02-14
|
PostgreSQL Licence (a liberal Open Source license)[
|
MySQL
|
Oracle Corporation
|
1995-11
|
8.0.13]
|
2018-10-07
|
GPL v2 or Proprietary
|
MariaDB
|
MariaDB Community
|
2010-02-01
|
10.3.14
|
2019-04-02
|
GPL v2, LGPL (for client-libraries)]
|
Microsoft SQL Server
|
Microsoft
|
1989
|
2017 (14)
|
2017-10-02
|
Proprietary
|
SQLite
|
D. Richard Hipp
|
2000-09-12
|
3.27.1
|
2019-02-08
|
Public domain
|
DB name
|
Max DB size
|
Max table size
|
Max columns
per row
|
Max column name size
|
Oracle DB
|
2PB (with standard 8k block) 8PB (with max 32k block) 8EB (with max 32k block and BIGFILE option)
|
4 GB * block size (with BIGFILE tablespace)
|
1,000
|
128
|
PostgreSQL
|
Unlimited
|
32 TB
|
250–1600 depending on type
|
63
|
MySQL
|
Unlimited
|
MyISAM storage limits: 256 TB;
Innodb storage limits: 64 TB
|
4,096
|
64
|
MariaDB
|
Unlimited
|
MyISAM storage limits: 256 TB;
Innodb storage limits: 64 TB;
|
4,096
|
64
|
Microsoft SQL Server
|
524,272 TB (32 767 files * 16 TB max file size) 16ZB per instance
|
524,272 TB
|
1,024/30,000(with sparse columns)
|
128
|
SQLite
|
128 TB (231 pages * 64 KB max page size)
|
Limited by file size
|
32,767
|
Unlimited
| MySQL ҳақида тушунча - MySQL - катта бўлмаган, ихчам кўп оқимли маълумотлар базаси сервери.
- MySQL юқори тезлиги, бардошлилиги ва қўллашда осонлиги билан тавсифланади.
- MySQL - сервер нотижорат фойдаланиш учун бепул.
- Маълумотлар базаси билан ишлайдиган, сони чекланмаган, фойдаланувчиларни қўллаб-қувватлайди;
- Буйруқлар тез бажарилади;
- Хавфсизликни оддий ва эффектив тизими;
- Create – маълумотлар базасини яратиш, жадвалларни яратиш ва маълумотлар киритиш;
- Read – жадваллардан керакли маълумотларни ўқиб олиш;
- Update – жадвал, жадвалдаги зарур маълумотларни ўзгартириш;
- Delete – маълумотлар базасидаги кераксиз маълумотларни ўчириш.
- Triggers, views, index
Маълумотлар базасида бажариладиган асосий амаллар - Маълумотлар базасини яратиш:
- CREATE DATABASE dbname;
- Жадвал яратиш:
- CREATE TABLE table_name ( column_name1 data_type(size), column_name2 data_type(size), column_name3 data_type(size), .... );
Маълумотлар базасида бажариладиган асосий амаллар Жадвалнинг барча устунларига янги маълумот киритиш: - INSERT INTO table_name VALUES (value1,value2,value3,...);
Жадвалнинг айрим устунларига янги маълумот киритиш: - INSERT INTO table_name (column1,column2,column3,...) VALUES (value1,value2,value3,...);
Маълумотлар базасида бажариладиган асосий амаллар - Жадвалдан айрим устунларидаги маълумотларни ўқиб олиш:
- SELECT column_name1,column_name2 FROM table_name;
- Жадвалдан барча устунларидаги маълумотларни ўқиб олиш:
- SELECT * FROM table_name;
Маълумотлар базасида бажариладиган асосий амаллар - Жадвалдаги маълумотларни ўзгартириш:
- UPDATE table_name SET column1=value1,column2=value2,... WHERE some_column=some_value;
- Мисол:
- UPDATE students SET yashash_joyi=‘TTJ‘ WHERE viloyat!=‘Toshkent’;
Маълумотлар базасида бажариладиган асосий амаллар - Жадвалдаги айрим маълумотларни ўчириш:
- DELETE FROM table_name WHERE some_column=some_value;
- Жадвалдаги барча маълумотларни ўчириш :
- DELETE FROM table_name; ёки DELETE * FROM table_name;
Маълумотлар базаси билан боғланиш МБ билан боғланишда mysql_connect функциясидан фойдаланамиз. mysql_connect(dbserver, username, password) Бу функция MySQL сервери билан алоқа ўрнатади ва бу алоқага кўрсаткич қайтаради ёки муваффақиятсиз чиққанда FALSE кўрсатади. Етишмаётган параметрлар учун қуйидаги маънолар муваққат қўйилади: dbserver = 'localhost:3306' username = МБ фойдаланувчи номи password = МБ фойдаланувчи пароли Мисол $conn = mysql_connect("localhost",“root","") or die("Уланишни амалга ошириб бўлмайди: ". mysql_error()); echo "Уланиш амалга ошди"; mysql_close($conn); ?> mysql_connect амали shell>mysql -u root-p Маълумотлар базаларини танлаш MySQL да маълумотлар базасини танлаш use буйруғи ёрдамида амалга оширилади: mysql>use book; PHP да бунинг учун mysql_select_db функцияси мавжуд mysql_select_db синтаксиси: мантиқий mysql_select_db (database_name қатори [,link_identifier ресурси]) Бу функция TRUE қийматни маълумотлар базасини муваффақиятли танланганда қайтаради ва FALSE ни эса – аксинча бўлганда. Маълумотлар базасига маълумотлар ёзиш mysql> INSERT INTO Artifacts SET title='Камолов'; PHP скриптда бундай буйруқ mysql_query() функция орқали амалга оширилади. mysql_query ресурси (query қатори [, ресурс link_identifier]) mysql_query() SQL-сўровни MySQL маълумотлар базасининг link_identifier кўрсаткичи ёрдамида аниқланадиган актив маълумотлар базасига жўнатади Агар link_identifier параметри ўтказиб юборилган бўлса, сўнгги очиқ алоқа ишлатилади. Агар очиқ алоқа бўлмаса, функция параметрсиз mysql_connect() функциясига ўхшаш ҳолда МББТ (СУБД) билан боғланишга уринади.
mysql_connect()
mysql_select_db()
mysql_query()
mysql_num_rows()
mysql_fetch_array()
mysql_close()
Маълумотлар базасида бажариладиган асосий амаллар - AVG() – устундаги ўртача қийматни қайтаради
- COUNT() – устундаги сатр сонини қайтаради
- FIRST() – устундаги биринчи қийматни қайтаради
- LAST() – устундаги охирги қийматни қайтаради
- MAX() – Устундаги энг катта қийматни қайтаради
- MIN() – устундаги энг кичик қийматни аниқлайди
- SUM() – устундаги қийматлар йиғиндисини ҳисоблайди
Маълумотлар базасида бажариладиган асосий амаллар - UCASE() – жадвал устунини катта ҳарфларга ўтказади
- LCASE() - жадвал устунини кичик ҳарфларга ўтказади
- MID() – сатрли майдондан ҳарфларни ажратиш
- LEN() - сатрли майдоннинг узунлигини ҳисоблайди
Маълумотлар базасида бажариладиган асосий амаллар - SELECT column_name(s) FROM table_name WHERE column_name BETWEEN value1 AND value2;
- //
- SELECT SUM(column_name) FROM table_name;
- SELECT MIN(column_name) FROM table_name;
- SELECT AVG(column_name) FROM table_name
Do'stlaringiz bilan baham: |