Study MySQL

a
. តើ​អ្វី​ជា MySQL? MySQL គឺ​ជា relational database management system (RDBMS) មួយ​ដែល​មាន​ការ​និយម​ប្រើ​ប្រាស់​ពី​សំណាក់​អ្នក​កសាង​គេហ​ទំព័រ​។ យើង​ប្រើ MySQL ដើម្បី​ រក្សា​ទុក​ទិន្នន័យ​របស់​គេហ​ទំព័រ របស់​យើង ហើយ​អាច​ធ្វើ​ការ​កែ​ប្រែ និង លុប​ទិន្នន័យ​ជា​ដើម។
អ្នក​កសាង​គេហ​ទំព័រ​ជា​ច្រើន​នៅ​លើ​ពិភព​លោក បាន​ជ្រើស​រើស PHP និង MySQL ដើម្បី​យក​មក កសាង​គេហ​ទំព័រ​របស់​ពួក​គេ។  MySQL បាន​ក្លាយ​ជា open source database ល្បី​ជាង​គេ​នៅ​លើ​ពិភព​លោក ដោយ​សារ​តែ វា​មាន ដំណើរ​ការ​លឿន, ផ្តល់​ទំនុក​ចិត្ត​ខ្ពស់ និង ងាយ​ស្រួល​ក្នុង​ការ​ប្រើ​ប្រាស់។
សំគាល់៖
មុន​នឹង​ចាប់​ផ្តើម​រៀន MySQL យើង​ត្រូវ​ចេះ HTML និង PHP ជា​មុន​សិន
. ប្រភេទទិន្នន័យ
 ខាង​ក្រោម​នេះ គឺ​ជា​ប្រភេទ​ទិន្នន័យ​របស់ MySQL ដែល​យើង​តែង​តែ​ប្រើ​ញឹក​ញាប់
- ប្រភេទ​ទិន្នន័យ​ជា​ចំនួន
INT : ជា​ប្រភេទ​ទិន្នន័យ​ជា​ចំនួនគត់ វា​មាន​ប្រវែង -2147483648 to 2147483647 ករណី​គិត​សញ្ញា និង​ពី 0 ទៅ 4294967295 ករណី​មិន​គិត​សញ្ញា។
smallint : ជា​ប្រភេទ​ទិន្នន័យ​ជា​ចំនួន​គត់​ដែរ តែ​មាន​ទំហំ​តូច​ជាង int។ វា​មាន​ប្រវែង ពី -32768 ទៅ 32767 ក្នុង​ករណី គិត​សញ្ញា និង​ពី 0 to 65535 ក្នុង​ករណី​មិន​គិត​សញ្ញា។
TINYINT : ជា​ប្រភេទ​ទិន្នន័យ​ជា​ចំនួន​គត់​ដែរ តែ​មាន​ទំហំ​តូច​ជាង smallint។ វា​មាន​ប្រវែង​ពី -128 ទៅ 127 ក្នុង​ករណី​គិត​សញ្ញា និង​ពី 0 to 255 ក្នុង​ករណី​មិន​គិត​សញ្ញា​។
FLOAT(M,D) : ជា​ប្រភេទ​ទិន្នន័យ​ចំនួន​ទសភាគ ដែល M មាន​នាទី​កំណត់​ប្រវែង​នៃ​ការ​បង្ហាញ និង D កំណត់​ប្រវែង​ចំនួន​ក្រោយ​ក្បៀស។
DOUBLE(M,D) : ជា​ប្រភេទ​ទិន្នន័យ​ចំនួន​ទសភាគ​ដែរ ប៉ុន្តែ​វា​មាន​ប្រវែង​ធំ​ជាង float។
- ប្រភេទ​ទិន្នន័យ​ជា អក្សរ
CHAR(M) : ជា​ប្រភេទ​ទិន្នន័យ​ជា​អក្សរ ដែល​មាន​ប្រវែង​ពី ១ → ២៥៥ តួ​អក្សរ។ ទំហំ​នៃ​ការ​ផ្ទុក​របស់​វា អា​ស្រ័យ​ទៅ​លើ​ការ​កំណត់ ចំនួន​តួ (M)។
VARCHAR(M) : ជា​ប្រភេទ​ទិន្នន័យ​ជា​អក្សរ ហើយ​ទំហំ​នៃ​ការ​ផ្ទុក​របស់ វា​មិន​អាស្រ័យ​ទៅ​លើ​ការ​កំណត់ ចំនួន​តួ (M) នោះ​ទេ វា​អាស្រ័យ​ទៅ​លើ តម្លៃ​ដែល​វា​ផ្ទុក ហើយ​បូក​ជា​មួយ នឹង ១ byte នៃ​ទំហំ​របស់ Space។
ឧទាហរណ៍
a

TEXT : ជា​ប្រភេទ​ទិន្នន័យ​ជា​អក្សរ​ដែល​មាន​លទ្ធភាព​ផ្ទុក​បាន ៦៥៥៣៥ តួ​អក្សរ​។
 - ប្រភេទ​ទិន្នន័យ​ជា ថ្ងៃ​ខែ​ (កាល​បរិច្ឆេទ) និង ម៉ោង
DATE
: ប្រភេទ​ទិន្នន័យ​ជា​ថ្ងៃ​ខែ ដែល​មាន​ទំរង់ YYYY-MM-DDហើយ​អាច​មាន​តម្លៃ​ពី ១០០០-01-01 ដល់ 9999-12-31 ។
DATETIME : ប្រភេទ​ទិន្នន័យ​ជា​ថ្ងៃខែ និង ម៉ោង​បញ្ចូល​គ្នា ដែល​មាន​ទំរង់ YYYY-MM-DD HH:MM:SS ។
TIME : ប្រភេទ​ទិន្នន័យ​ជា​ម៉ោង ដែល​មាន​ទំរង់ HH:MM:SS ។
៣. របៀប​បង្កើត, លុប, បង្ហាញ និង ប្រើ Database ដើម្បី​បង្កើត Database អាច​យើង​ប្រើ phpMyAdmin (មាន Interface), MySQL Console (ប្រើ Command Line) និង កម្ម​វិធី​ផ្សេង​ៗ​ទៀត​។ ប៉ុន្តែ​នៅ​ក្នុង​មេរៀន​នេះ អាយ​ធី​កូន​ខ្មែរ​សូម​លើក​យក​ MySQL Console មក​ប្រើ ដើម្បី​ឲ្យ​យើង​អាច ចង់​ចាំ និង ចេះ ពី​កូដ​របស់ MySQL។
របៀប​ចូល​ទៅកាន់ MySQL Console
មុន​ដំបូង​យើង​ត្រូវ​បើក Wamp Server ជា​មុន​សិន បន្ទាប់​មក​ចុច​លើ Trail Icon របស់​វា → MySQL → MySQL Console
a
បន្ទាប់ ​មក​វា​នឹង​បង្ហាញ​ផ្ទាំង​មួយ​ដែល​តំរូវ​ឲ្យ​យើង​បញ្ជូល​លេខ​សំងាត់ ប៉ុន្តែ​ជា​ធម្មតា យើង​មិន​ចាំ​បាច់​វាយ​បញ្ជូល​នោះ​ទេ ដូចនេះ​យើង​គ្រាន់​ចុច Enter ពេល​នោះ​វា​បង្ហាញ​ផ្ទាំង​ដែល​អាច ឲ្យ​យើង​សរសេរ កូដ​របស់ MySQL បាន​ហើយ​។
a
សំគាល់:
វាយ exit រួច​ចុច Enter ដើម្បី​ចាក​ចេញ
របៀប​បង្កើត Database
ទំរង់ទូទៅ
CREATE DATABASE database_name;
ឧទាហរណ៍
a
សំគាល់: យើង​អាច​ចុច​លើ Up & Down Arrow key ដើម្បី​យក command ដែល​យើង​ធ្លាប់​ប្រើ មក​ប្រើ​ម្តង​ទៀត​បាន​។
របៀប​បង្ហាញ Database ទាំង​អស់​ដែល​យើង​បាន​បង្កើត
ទំរង់ទូទៅ
SHOW DATABASES;
ឧទាហរណ៍
a
របៀប​ជ្រើស​យក Database មក​ប្រើ
មុន​នឹង​យើង​ធ្វើ​ការ​បង្កើត Table យើង​ត្រូវ​ជ្រើស​រើស Database ជា​មុន​សិន​។
ទំរង់ទូទៅ
USE database_name;
ឧទាហរណ៍
a

របៀបលុប Database
ទំរង់ទូទៅ
DROP DATABASE database_name;
 ឧទាហរណ៍
DROP DATABASE dbsample;

. របៀប​បង្កើត,លុបនិងមើល​ព័ត៌មាន Table
របៀបបង្កើត Table
ទំរង់ទូទៅ
CREATE TABLE Table_Name(Field_Name1 Datatype(num),
                                             Field_Name2 Datatype(num), . . . );
ឧទាហរណ៍
mysql> CREATE TABLE tbluser(us_id INT,us_name VARCHAR(50),
                   us_username VARCHAR(5),us_password VARCHAR(50),create_date DATE);

របៀប​បង្ហាញ​ព័ត៌មាន​ផ្សេង​ៗ​របស់ Table
ទំរង់ទូទៅ
DESC table_name;  | DESCRIPE table_name;
ឧទាហរណ៍
a
របៀប​លុប Table ចេញ​ពី Database
ទំរង់ទូទៅ
DROP TABLE Table_Name;
ឧទាហរណ៍
ALTER TABLE tbluser;
៥. Attribute របស់ Column Attribute គឺ​យើង​ប្រើ​វា​ដើម្បី​កំណត់​លក្ខណៈ​ទៅ​ឲ្យ Column និមួយ​ៗ​របស់ Table ដូច​ជា​កំណត់​ជា មិន​មាន​ស្ទួល ឬ ជា Primary Key ជា​ដើម។
ខាង​ក្រោម​នេះ គឺ​ជា Attribute និង មុខ​ងាររបស់​វា
. Unsigned : មិន​គិត​សញ្ញា​
. Signed : គិត​សញ្ញា
. Auto_Increment : កំណត់​វា​ឲ្យ​កើន​ដោយ​ស្វ័យ​ប្រវត្តិ (Auto number)
. Unique : មិន​អាច​មាន​ស្ទួន
. Null : អនុញ្ញាត​ឲ្យ​ទទេ
. Not Null : មិន​អនុញ្ញាត​ឲ្យ​ទទេ
. Default Value : តំណត់​តម្លៃ Default
ឧទាហរណ៍
mysql> CREATE TABLE tbluser(us_id INT UNSIGNED NOT NULL PRIMARY KEY
AUTO_INCREMENT,us_name VARCHAR(50),us_username VARCHAR(5),us_password
VARCHAR(50),create_date DATE);
a
៦. ការ​ធ្វើ​ការ​កែ​ប្រែ Table ករណី ​ដែល​យើង​បាន​បង្កើត Table រួច​ហើយ ប៉ុន្តែ​មាន​ការ​ខ្វះ,លើស ឬ ខុស​ត្រង់ យើង​មិន​ចាំ​បាច់ លុប​វា​ចោល រួច​បង្កើត​សារ​ជា​ថ្មី​នោះ​ទេ គឺ​យើង​មាន​លទ្ធភាព​អាច​ការ​ប្រែ​វា​បាន ដូច​វិធី​ដែល​មាន បង្ហាញ​ខាង​ក្រោម​។
បន្ថែម Field ថ្មី​ឲ្យ Table (មាន​ទី​តាំង​បន្ទាប់​ពី field ដែល​មាន)
ទំរង់ទូទៅ
ALTER TABLE table_name ADD field_name,ADD field_name2 . . . ;
ឧទាហរណ៍
ALTER TABLE tbluser ADD us_email;
បន្ថែម Field ដែល​មាន​ទីតាំង​នៅ​មុខគេ
ទំរង់ទូទៅ
ALTER TABLE table_name ADD field_name FIRST field_name2 . . . ;
ឧទាហរណ៍
ALTER TABLE tbluser ADD us_website FIRST;
បន្ថែម Field ថ្មី ដែល​មាន​ទីតាំង​បន្ទាប់​ពី Field ណា​មួយ
ទំរង់ទូទៅ
ALTER TABLE table_name ADD field_name datatype AFTER other_field_name,
ADD field_name2 . . . ;
ឧទាហរណ៍
ALTER TABLE tbluser ADD us_address TEXT AFTER us_email;
លុប Field ណា​មួយ​ចេញ​ពី Table
ទំរង់ទូទៅ
ALTER TABLE table_name DROP field_name ;
ឧទាហរណ៍
ALTER TABLE tbluser DROP us_website ;
៧. របៀប​បញ្ចូល​ទិន្នន័យ (Insert)
ទំរង់ទូទៅ
INSERT INTO table_name ( field1, field2,…fieldN )
VALUES( value1, value2,…valueN );
ឧទាហរណ៍
INSERT INTO tbluser(us_name,us_username,us_password)
VALUES(“chan reaksmey”,”reaksmey”,”R3a5mey”);
សំគាល់:
ដោយ us_id ជា auto_number ដូចនេះ​យើង​មិន​ចាំ​បញ្ចូល​ឲ្យ​វា​នោះ​ទេ​។
៨. របៀបទាញយកទិន្នន័យពី Table (Select)
ទំរង់ទូទៅ
SELECT field_name1,field_name2,.. FROM table_name [WHERE];
ឧទាហរណ៍១
mysql> SELECT us_id,us_name,us_username,us_password FROM tbluser;
+——-+—————+————-+————-+
| us_id | us_name       | us_username | us_password |
+——-+—————+————-+————-+
|     1 | Chan Reaksmey | Reaks       | R3ak5mey    |
|     2 | Chan Dara     | Dara        | dara09      |
|     3 | Sok San       | San         | 5an         |
+——-+—————+————-+————-+
3 rows in set (0.04 sec)
ឧទាហរណ៍២
mysql> SELECT * FROM tbluser;
+——-+—————+————-+————-+
| us_id | us_name       | us_username | us_password |
+——-+—————+————-+————-+
|     1 | Chan Reaksmey | Reaks       | R3ak5mey    |
|     2 | Chan Dara     | Dara        | dara09      |
|     3 | Sok San       | San         | 5an         |
+——-+—————+————-+————-+
3 rows in set (0.00 sec)
សំគាល់:
slect * មាន​ន័យ​ថា select គ្រប់ field ទាំង​អស់​របស់ Table។
ការ​ប្រើ​ប្រាស់ WHERE
យើង​ប្រើ​ប្រាស់ WHERE នៅ​ករណី​ដែល​យើង​ចង់​ដាក់​លក្ខខ័ណ្ឌ​ទៅ​ឲ្យ​ការ​ទាញ​យក​ទិន្នន័យ របស់​យើង ដូច​ជា user ណា​ដែល​មាន លេខ us_id = 1 ជា​ដើម។
ឧទាហរណ៍
mysql> SELECT * FROM tbluser WHERE us_id <3;
+——-+—————+————-+————-+
| us_id | us_name       | us_username | us_password |
+——-+—————+————-+————-+
|     1 | Chan Reaksmey | Reaks       | R3ak5mey    |
|     2 | Chan Dara     | Dara        | dara09      |
+——-+—————+————-+————-+
2 rows in set (0.04 sec)
៩. របៀប​កែ​ប្រែ​ទិន្នន័យ នៅ​ក្នុង Table (Update)
នៅ​ក្នុង​ការ​កែ​ប្រែ​ទិន្នន័យ​នេះ យើង​ត្រូវ​ដឹង​ច្បាស់​ថា​តើ Record មួយ​ណា​ដែល​យើង​ចង់​ធ្វើ​ការ​កែ​ប្រែ ដូច​នេះ យើង​ចាំ​បាច់​ត្រូវ​តែ​ប្រើ លក្ខ​ខ័ណ្ឌ ដើម្បី​ធ្វើ​ការ​កែ​ប្រែ បាន។
ទំរង់ទូទៅ
UPDATE table_name SET field1=new-value1, field2=new-value2 WHERE …;
ឧទាហរណ៍
mysql> UPDATE tbluser SET us_name=”Sok Chandara” WHERE us_id=2;
Query OK, 1 row affected (0.09 sec)
Rows matched: 1  Changed: 1  Warnings: 0
mysql> SELECT * FROM tbluser;
+——-+—————+————-+————-+
| us_id | us_name       | us_username | us_password |
+——-+—————+————-+————-+
|     1 | Chan Reaksmey | Reaks       | R3ak5mey    |
|     2 | Sok Chandara  | Dara        | dara09      |
|     3 | Sok San       | San         | 5an         |
+——-+—————+————-+————-+
3 rows in set (0.00 sec)
១០. របៀប​លុប​ទិន្នន័យ​ចេញ​ពី Table (Delete)
ទំរង់ទូទៅ
DELETE FROM table_name [WHERE];
ឧទាហរណ៍១
mysql> DELETE FROM tbluser;
Query OK, 3 rows affected (0.08 sec)
mysql> SELECT * FROM tbluser;
Empty set (0.00 sec)
សំគាល់:
ក្នុង​ករណី​ដែល​យើង​មិន​បាន​ដាក់​លក្ខខ័ណ្ឌ នោះ​វា​នឹង​លុប ទិន្នន័យ​ទាំង​អស់​នៅ​ក្នុង Table។
ឧទាហរណ៍២
mysql> DELETE FROM tbluser WHERE us_id=3;
Query OK, 1 row affected (0.07 sec)
mysql> SELECT * FROM tbluser;
+——-+—————+————-+————-+
| us_id | us_name       | us_username | us_password |
+——-+—————+————-+————-+
|     1 | Chan Reaksmey | Reaks       | R3ak5mey    |
|     2 | Chan Dara     | Dara        | dara09      |
+——-+—————+————-+————-+
2 rows in set (0.03 sec)
១១. របៀប​បង្កើត​ Database ជា​មួយ phpMyAdmin
លើក​មុន​យើង​បាន​ដឹង​ពី​របៀប​នៃ​ការ​បង្កើត Database ដោយ​ប្រើ Command រួច​មក​ហើយ តែ​ពេល​នេះ យើង​មក​បង្កើត​តាម phpMyAdmin វិញ​ម្តង។
a
មុន​ដំបូង​យើង​បើក Wamp Server បន្ទាប់​មក​ទៀត​ចុច​លើ អាយ​ខុន​(ពណ៌​បៃតង)​របស់ Wamp → phpMyAdmin
បន្ទាប់​បន្ទាប់​មក ដាក់​ឈ្មោះ Database និង ធ្វើ​ការ​កំណត់​ផ្សេងៗ​ទៀត​ដូច​រូប​ខាង​ក្រោម
a
បន្ទាប់​ពី​យើង​បង្កើត Database រួច យើង​អាច​ធ្វើ​ការ​បង្កើត Table ទៅ​តាម​ដែល​យើង​ចង់​បាន។
ប៉ុន្តែ ក្នុង​ការ​បង្កើត Table នៅ​ក្នុង phpMyAdmin មាន​ការ​ពិបាក​បន្តិច ដូច​នេះ នៅ​ក្នុង​មេរៀន​ក្រោយ យើង​នឹង​បង្ហាញ​កម្ម​វិធី​មួយ​ដែល​អាច​ឲ្យ​យើង​បង្កើត Table ដោយ​ងាយ​ស្រួល​។
១២. របៀប​បង្កើត Database និង Table ជា​មួយ​នឹង Navicat Navicat គឺ​ជា​កម្មវិធី​មួយ​ដែល​អាច​ឲ្យ​យើង​បង្កើត Database និង Table បាន​យ៉ាង​ងាយ​ស្រួល ដែល​វា​មាន Tools ស្រាប់​ៗ​ឲ្យ​យើង​ប្រើ​។ នៅ​ពេល​ដែល​យើង​តំលើង​វា​រួច​ហើយ វា​តម្រូវ​ឲ្យ​យើង​បង្កើត Connection ជា​មុន​សិន ដោយ​ចុច​លើ
a
បន្ទាប់​មក​យើង​ដាក់​ឈ្មោះ​ឲ្យ Connection និង អាច​ធ្វើ​ការ​កំណត់​ផ្សេង​ៗ​ទៀត​ រួច​ចុច​ប៊ូតុង OK
a
របៀប​បង្កើត Database បន្ទាប់ ​ពី​យើង​បង្កើត Connection រួច​ហើយ យើង​ចុច​លើ Connection ពេល​នោះ​វា​នឹង​បង្ហាញ Databases របស់​យើង​ទាំង​អស់​ដែល​បាន​បង្កើត​។ ដើម្បី​បង្កើត Database យើង​គ្រាន់​តែ​ចុច Mouse ស្តាំ រួច​យក New Databases
a
បន្ទាប់់​មក ដាក់​ឈ្មោះ Database និង ធ្វើ​ការ​កំណត់​ឲ្យ​វា​ស្គាល់​អក្សរ យូនីកូដ រួច​ចុច​ប៊ូតុង OK
a
របៀប​បង្កើត Table
ដើម្បី​បង្កើត Table យើង​គ្រាន់​តែ​ចុច​ពីរ​ដង​លើ Database របស់​យើង​រួច Mouse ស្តាំ​លើ Table → New Table
a
បន្ទាប់​មក​វា​នឹង​បង្ហាញ​តារាង​មួយ​ដែល​មាន​ឧបករណ៍​ស្រាប់​ៗ​ដើម្បី​ឲ្យ​យើង​ធ្វើ​ការ​បង្កើត Table ។
a
១៣. របៀប Export និង Import Database នៅក្នុង phpMyAdmin នៅ ​ក្នុង​ករណី​ដែល​យើង​ចង់​យក គេហ​ទំព័រ (project) របស់​យើង​ដែល​ភ្ជាប់​ជា​មួយ​នឹង database ទៅ​ដំណើរ​ការ​លើ​កុំព្យូរទ័រ​ផ្សេង គឺ​ដំណាក់​កាល​ទី​១យើង​ត្រូវ copy project របស់​យើង​ដាក់​ចូល​ក្នុង wamp server នៃ​កុំព្យូទ័រ​នោះ​។ ចុះ​ចំណែក​ឯ database តើ​យើង copy តាម​របៀប​ណា​?
ដើម្បី​អាច​យក database ទៅ​ប្រើ​នៅ​ក្នុង​កុំព្យូទ័រ​ផ្សេង​ទៀត គឺ​យើង​ត្រូវ Export (Backup) វា​សិន បន្ទាប់​មក​ទើប​យើង​យក file ដែល​យើង​បាន export នោះ​ទៅ​ធ្វើ​ការ Import ចូល​ទៅ​ក្នុង កុំព្យូទ័រ ផ្សេង​ដែល​យើង​ចង់​ប្រើ database នោះ។
របៀប Export Database ដើម្បី​ធ្វើ​ការ Export មុន​ដំបូង​យើង​ត្រូវ​ចូល​ទៅ​ក្នុង phpMyAdmin បន្ទាប់​មក​ចុច​លើ database ដែល​យើង​ចង់​ធ្វើ​ការ export រួច​យើង​ចុច​លើ​ប៊ូតុង Export
a
ចុច​ប៊ូតុង OKជា​ការ​ស្រេច។ ចំពោះ database ដែល​យើង​បាន ធ្វើ​ការ Export នោះ​វា​មាន extension .sql។
a
របៀប Import Database  ដើម្បី Import database មុន​ដំបូង​យើង​ត្រូវ​បង្កើត database ទទេ​ថ្មី​មួយ​សិន បន្ទាប់​មក​ចុច​លើ database នោះ រួច​ចុច​លើ​ប៊ូតុង Import បន្ទាប់​មក Browser រក database ដែល​យើង​បាន backup
a
a
បន្ទាប់​មក​ចុច​លើ​ប៊ូតុង Go ជា​ការ​ស្រេច។
សំគាល់:
ក្នុង​ករណី​ដែល​យើង​ធ្វើ​ការ​បង្ហោះ​គេហទំព័រ​របស់​យើង​ទៅ​លើ Server ក៏​យើង​ធ្វើ​តាម វិធី​នេះ​ដែរ គឺ​មុន​ដំបូង​យើង Copy project របស់​យើង​ទៅ​លើ Hosting បន្ទាប់​មក export database របស់​យើង​ទៅ import ចូល database server ។

Comments