Programming ေတြလည္းမေၿပာရတာၾကာၿပီေနာ္..။ Blog widget ေတြေလ့လာေနတာနဲ႔.. programming ဘက္..မလွည့္ၿဖစ္လိုက္ဘူး.။ ဒီတစ္ခါမွာေတာ့.. Database တစ္ခုကုိ.. ဘယ္လုိေဆာက္လဲဆိုတာ..ေၿပာၿပပါမယ္.။ ေတာ္ေတာ္မ်ားမ်ားက.. Database ဘယ္လုိေဆာက္လဲလို႔..
လာေမးၾကတာနဲ႔.. ဒီ Post ေလးေရးမယ္လို႔.. စဥ္းစားမိလိုက္တာပါ..။ အခုလိုတင္လိုက္ေတာ့လည္း..အာလံုးသိသြားတာေပ့ါ ^_^
Database ကုိ MySQL သံုးၿပီးေဆာက္မွာပါ..။ ၾကိဳက္တာသံုးလုိ႔ရပါတယ္..။ ညီမကေတာ့.. MySQL သံုးၿပီး..ေဆာက္ၿပပါမယ္.။
အရင္ဆံုး... MySQL run ဖို႔... WAMP ေလးကုိ..ေဒါင္းလုပ္ဆြဲလိုက္ပါမယ္...။ Download Here
MySQL အတြက္လည္း.. software မ်ိဳးစံုရွိပါတယ္.။ WAMP ထည့္ထားရင္.. PHPလည္းသံုးလို႔ရပါတယ္..။
ေဒါင္းလို႔ၿပီးရင္.. software ကုိ run လိုက္ပါ..။ အဲ့မွာ FireWall တတ္လာပါလိမ့္မယ္...WAMP apache ကုိ.. unblock လုပ္လိုက္ပါ..။
WAMP ေလးက.. task bar မွာ..စိမ္းေနပါလိမ့္မယ္..။ အစိမ္းေရာင္ၿဖစ္မွ..အလုပ္လုပ္တာပါ..။
WAMP icon ေလးကုိႏွိပ္လိုက္ပါ..။ MySQL > MySQL Console ဆိုတာ.ရွိပါတယ္..။ ဖြင့္လိုက္ပါမယ္.။
cmd လိုမ်ိဳး.. mysql က်လာပါလိမ့္မယ္..။ password ေတာင္းရင္.. enter ေခါက္လိုက္ပါ..။
ဒီလိုမ်ိဳးက်လာပါလိမ့္မယ္..။
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 4
Server version: 5.5.8-log MySQL Community Server (GPL)
Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
Database စေဆာက္ပါေတာ့မယ္..။ ဥပမာအေနနဲ႔.. Student Information တစ္ခုေဆာက္ရေအာင္..။
ဘာေတြပါမလဲဆုိရင္.Name , RollNo, RegNo, Department ပါပါမယ္.။ (RegNo = Registration Number)
mysql> ရဲ႔ေဘးမွာ.. ဒီစာေလးေရးလိုက္ပါမယ္.။ ဒီလိုမ်ိဳးေလးပါ..
mysql> create database studentinformation;
ေရးၿပီး.. Enter ေခါက္လိုက္ပါ..။
Database ေလးေတာ့..ေဆာက္လုိက္ပါပီ..။ Table ေတြေဆာက္ဖို႔ပဲက်န္ေတာ့ပါတယ္.။
mysql> create database studentinformation;
Query OK, 1 row affected (0.00 sec)
အဲ့လုိေပၚလာရင္.. OK ပါတယ္.။ မွားရင္ေတာ့.. ဒီလိုမ်ိဳး Error တတ္ပါမယ္..။
ERROR 1049 (42000): Unknown database 'studnetinformation'
Table ဆက္ေဆာက္ပါမယ္..။
Table ကုိ ခု Database ထဲမွာ..ထည့္မွာမုိ႔လို႔.. ဒီ database ကုိၿပန္သံုးမယ္လုိ႔..ေၾကညာေပးရပါမယ္...။
mysql> use studentinformation;
အဲ့လိုရုိက္ၿပီး.. Enter ေခါက္လိုက္ပါမယ္။
Database changed ၿဖစ္သြားပါလိမ့္မယ္..။
Table စေဆာက္ေတာ့ပါမယ္..။
mysql> create table data(Name char(10),RollNo int(3)auto_increment,RegNo int(5),Department char(20),primary key(RollNo)); လို႔ေ၇းၿပီး.. Enter ေခါက္လိုက္ပါ..။
မွန္ရင္.. Query OK, 0 rows affected (0.19 sec) ဆိုၿပီးေပၚလာပါလိမ့္မယ္..။
ဘာေတြေရးထားတာလဲဆုိရင္.. data ဆုိတာက.. tablename ပါ..ၾကိဳက္တာေပးလို႔ရပါတယ္..။
char(10) ဆိုတာ. char = character ကုိေၿပာတာပါ..။ ( Character means "abcde...." )
10 ဆိုရင္. Length ပါ..။ အမ်ားဆံုးနာမည္ 10လံုးလက္ခံမယ္လို႔ေရးထားတာပါ..။
ၾကိဳက္သေလာက္ထားလို႔ရပါတယ္။
int(3) ဆိုတာ int = integer ( Integer means "1234.." )
3 ဆိုေတာ့. Roll No ကုိအမ်ားဆံုးသံုးေနရာေဖာ္ၿပပါမယ္..။
RegNo နဲ႔ Department လည္းတူတူပါပဲ..။ ရမယ္ထင္ပါတယ္.. ^_^
table တုိင္းမွာ primary key ထည့္ေပးရပါတယ္..။ မထပ္နဲ႔ ID ကုိ ထားရပါတယ္.။
အခုဆိုရင္ RollNo ကုိ.. primary key ေပးထားပါတယ္..။
Data ေတြကုိ. Table ထဲက..ဆြဲထုတ္ရင္..နာမည္တူေနရင္...မလုိအပ္တဲ့ data ေတြပါ..ထြက္လာမွာစိုးလို႔ပါ..။
ဥပမာ.. အတန္းထဲမွာ.. ေမာင္ေမာင္ဆိုတဲ့နာမည္နဲ႔ .. လူႏွစ္ေယာက္ရွိမယ္ဆုိရင္..
ဆရာမက..ေမာင္ေမာင္လာဦးလို႔..ေခၚလိုက္ရင္.. 2ေယာက္လံုးလာမွာပဲေလ..။ အဲ့ေတာ့..ေခၚခ်င္တဲ့သူကုိ. Roll
No ေၿပာၿပီးေခၚလိုက္ရင္ေတာ့.. ဆရာမေခၚခ်င္တဲ့ ေမာင္ေမာင္ပဲ..လာမွာပါ.။ Name ေတြက..ထပ္ႏိုင္ေပမယ့္..
Roll No ေတြကေတာ့...မထပ္ႏိုင္ပါဘူး..။ ဒါေၾကာင့္. Roll No ကုိ.. ဒီ table ထဲမွာ primary key
ေပးလိုက္တာပါ...။
table လည္းေဆာက္ၿပီးၿပီဆုိေတာ့. Data ထည့္ရေအာင္ေနာ္..။
mysql> insert into data(Name,RollNo,RegNo,Department)values('Aye Aye',100,10000,
'Technology');
Enter ေခါက္ပါ..။
Data ထည့္တဲ့ပံုစံေလးက insert into tablename(fields)values(data);
အဲ့လိုပံုစံနဲ႔ေရးသြားတာပါ..။ tablename ေနရာမွာ..အခု tablename က data ပါ.။
(fields)က..table column name ေတြပါ..။ values(data) မွာေတ့ာ. ထည့္ခ်င္တဲ့ data ေတြကုိထည့္လိုက္ပါ..။
Aye Aye က character မုိ႔လုိ႔.. Single code ( ' ' ) နဲ႔ေရးပါတယ္..။
Rollno , RegNo က. number ေတြမို႔လို႔.. ဒီတိုင္းေရးပါတယ္.။
Department လည္း char မုိုလို႔ ' ' သံုးပါတယ္.။
ထည့္ထားတဲ့ data ေတြေရာက္မေရာက္သိခ်င္ရင္.. select * from data; ဆုိၿပီး. enter ေခါက္လုိက္ပါ...။
table ေလးက်လာပါလိမ့္မယ္..။
+---------+--------+-------+------------+
| Name | RollNo | RegNo | Department |
+---------+--------+-------+------------+
| Aye Aye | 100 | 10000 | Technology |
+---------+--------+-------+------------+
1 row in set (0.01 sec)
ဒီတစ္.. data ေတြကုိ..တစ္ခါခ်င္းစီမထည့္ပဲနဲ႔.. တၿပိဳင္နက္တည္းထည့္ပါမယ္..။
mysql> insert into data(Name,RollNo,RegNo,Department)values('Zaw Zaw',null,10001
,'Computer Science'),('Soe Soe',null,10002,'Internet'),('Hla Hla',null,10002,'Science');
လို႔ရုိက္လိုက္ပါမယ္..။ အဲ့မွာေမးစရာတစ္ခုရွိပါတယ္. null ကုိဘာလုိ႔သံုးလဲဆိုၿပီးေတာ့ပါ..။ ပထမဆံုး data မွာ
Roll No ေနရာမွာ.. 100 ၿဖည့္ခဲ့ပါတယ္.။ auto_increment သံုးထားလုိ႔.. null ၿဖည့္ထားတာပါ..။ ( Null =
empty )
mysql> select * from data; လုိ႔ရိုက္ၿပီးထုတ္ၾကည့္လုိက္ပါ..။
+---------+--------+-------+------------------+
| Name | RollNo | RegNo | Department |
+---------+--------+-------+------------------+
| Aye Aye | 100 | 10000 | Technology |
| Zaw Zaw | 101 | 10001 | Computer Science |
| Soe Soe | 102 | 10002 | Internet |
| Hla Hla | 103 | 10003 | Science |
+---------+--------+-------+------------------+
4 rows in set (0.00 sec)
လို႔ေပၚလာပါလိမ့္မယ္.။
Database ထဲက ၿပန္ထြက္ခ်င္ရင္ေတာ့.. mysql> exit; လို႔ရိုက္လိုက္ပါ.။
ဒီေလာက္ဆုိရင္.. Database ဘယ္လိုေဆာက္လဲ..။ ဘယ္လို data ထည့္လဲဆိုတာ..
သိေလာက္ပီထင္ပါတယ္..။ ေနာက္တစ္ရက္က်ရင္.. data ေတြ..ဘယ္လို Update လုပ္လဲ.. delete
လုပ္လည္းဆိုတာ...တင္ေပးပါ့မယ္.. ^_^ ဒီေန႔ေတာ့..ဒီေလာက္ပဲေနာ္..။ မရွင္းတာရွိရင္..ၿပန္ေမးပါေနာ္..။






ေက်းဇူးပါ အစ္မ
ReplyDelete