 |
|
|  |
MYSQL QueryÀÇ °£´ÜÇÑ »ç¿ë¹ý |
|
|
 |
14³â Àü |
1. MYSQL DB
PHP¿¡¼ DB¿Í ¿¬µ¿Çϱâ À§Çؼ´Â ¿ì¼± DB¿¡ Á¢±ÙÀ» ÇØ¾ß ÇÕ´Ï´Ù.
DB¿¡ Á¢±ÙÇϱâ À§Çؼ´Â MYSQL DB°¡ ¾îµ¥ ÀÖ´ÂÁö¿Í ÀÚ½ÅÀÇ °èÁ¤ ¾Æµï¿Í, Æнº¿öµå,
±×¸®°í DB°èÁ¤ ¾Æµï°¡ ÇÊ¿äÇÕ´Ï´Ù.
º¸Åë MYSQL DB´Â ÀÚ½ÅÀÇ °èÁ¤°ú °°Àº °÷¿¡ Àֱ⠶§¹®¿¡ localhost·Î ÁöÁ¤ÇÏ¸é µÇÁö¸¸ µû·Î ¼¹ö¸¦
¸¸µé¾î¼ MYSQL DB¸¦ ÀÌ¿ëÇÏ´Â °æ¿ì¿¡´Â ÇØ´ç ¼¹öÀÇ IP ÁÖ¼Ò°¡ ÇÊ¿äÇÕ´Ï´Ù.
±×·³ ½ÇÁúÀûÀ¸·Î ÇÏ°Ú½À´Ï´Ù.
¿ì¼± DB¿¡ Á¢¼ÓÇϱâ À§ÇÑ ¼³Á¤À» º¯¼ö·Î ¹Ì¸® ¼±¾ðÇØ ³õ½À´Ï´Ù. (ÀÌ°Ô ÆíÇÕ´Ï´Ù)
$host_name = "localhost";
$user_name = "user";
$user_password = "*****";
$db_name = "test";
Áï MysqlÀÇ DB´Â °°Àº °èÁ¤¿¡ ÀÖ´Ù±¸ ÇÏ°í, $user_nameÀº ÀÚ½ÅÀÇ °èÁ¤ ¾Æµï, $user_password´Â °èÁ¤ Æнº¿öµå, $db_nameÀº Àڽſ¡°Ô ÇÒ´çµÈ DBÀÇ À̸§ÀÔ´Ï´Ù.
±×·³ ÀÌÁ¦ Á¢¼ÓÀ» ÇØ¾ß °ÚÁÒ.
$connect = mysql_connect($host_name,$user_name,$user_password) or echo"mysql_error()";
mysql_connect()¶ó´Â ÇÔ¼ö°¡ ¹Ù·Î DB¿¡ Á¢¼ÓÇÏ´Â ÇÔ¼öÀÔ´Ï´Ù.
mysql_connect() ÇÔ¼ö¿¡ $host_name, $user_name, $user_password¸¦ ÁÖ°í È£ÃâÀ» ÇÏ°Ô µÇ¸é °á°ú°¡ ³ª¿É´Ï´Ù.
ÀÌ °á°ú°ªÀº $connect ¾È¿¡ ³Ö°Ô µÇÁÒ.
µÚ¿¡ or echo"mysql_error()"; Àº ¸¸¾à ¿¡·¯°¡ ¹ß»ýÇÏ¸é ¿¡·¯°ªÀ» Ãâ·ÂÇÏ°Ô ÇÏ´Â ±¸¹®ÀÔ´Ï´Ù.
mysql_error()Àº ¿¡·¯¹ß»ý½Ã ¿¡·¯°ªÀ» return ÇØ ÁÖ´Â ±âƯÇÑ ÇÔ¼öÀÔ´Ï´Ù.
¸¸¾à ÀÌ»ó¾øÀÌ DB¿¡ Á¢¼ÓÇÏ°Ô µÇ¸é ¾Æ¹« Ç¥½Ãµµ ¾È³ª°ÚÁÒ.
±×·³ ÀÌÁ¦ ÀÚ½ÅÀÇ DB¿¡ ¿¬°áÇØ º¾½Ã´Ù.
mysql_select_db($db_name, $connect ) or echo"mysql_error()";
mysql_select_db()¿¡ $db_name °ú $connect¸¦ ³Ö±¸ È£ÃâÇϸé ÀÚ½ÅÀÇ DB¿¡ ¿¬°áÀÌ µË´Ï´Ù.
2. Table »ý¼º
ÀÚ ±×·³ ÀÌÁ¦ DB¿¡ Å×À̺íÀ» »ý¼ºÇØ º¾½Ã´Ù.
DB¿¡ Å×À̺íÀ» »ý¼ºÇÏ°Ç, »èÁ¦ÇÏ°Ç, ¾Æ´Ô ¼öÁ¤ÇÏ°Ç Query¹®À» mysql¿¡ °Ç³×ÁÖ°Ô µÇ¾î ÀÖ½À´Ï´Ù.
À̸§°ú ³ªÀÌ, ÀüȹøÈ£, ÁÖ¼Ò¸¸ °¡Áö°í ÀÖ´Â Å×À̺íÀ» ¸¸µé¾î º¾½Ã´Ù.
$que = "CREATE TABLE Human_info (
id int(11) DEFAULT '0' NOT NULL auto_increment,
name varchar(10),
age int(3),
tel_num varchar(20),
address text,
PRIMARY KEY (id))";
À§¿Í °°Àº Query¹®À» ¸¸µé¾ú½À´Ï´Ù.
Query¹®À» ¸¸µé ¶§´Â ¹®ÀÚ¿ º¯¼ö¿¡ ³»¿ëÀ» ÀÔ·ÂÇÏ¸é µË´Ï´Ù.
À§¿¡ °ÍÀº º¸±â ÁÁÀ¸¶ó°í ÁÙÀ» ³ª´©¾ú´Âµ¥ ÀÌ·¯±â ½ÈÀº ÇÑÁÙ·Î ÂÒ¾Ç Çصµ µË´Ï´Ù.
»ý¼ºÇÏ´Â Query¹®Àº "CREAT TABLE Å×À̺í¸í ( Çʵå¸í°ú Type )" ·Î ÇÕ´Ï´Ù.
Áï À§¿¡¼ Å×À̺í¸íÀº Human_Info°¡ µÇÁÒ.
±×¸®°í id, name, age, tel_num, address °°Àº ³ÑÀº ¹Ù·Î ½ºÅ°¸¶ À̸§ÀÌ µÇ´Â °ÍÀÌ°í, ±× ¿·¿¡ int(11),
varchar(10), text °°Àº °ÍÀº TypeÀÌ µÇ´Â°ÅÁÒ.
±×·±µ¥ »ç¿ëÇÒ ½ºÅ°¸¶¿Í´Â º°µµ·Î id ¶ó´Â ½ºÅ°¸¶¸¦ ÁöÁ¤ÇßÁÒ?
ID´Â Å×ÀÌºí¿¡ µ¥ÀÌÅ͸¦ ³Ö°í »¬ ¶§ ÇÊ¿äÇÑ ÀϷùøÈ£ÀÔ´Ï´Ù.
DEFAULT '0' Àº ÷¿¡´Â 0ºÎÅÍ ½ÃÀÛÇÑ´Ù´Â °ÅÁÒ.
NOT_NULL Àº Àý´ë ºóÄÀº Çã¿ë ¾ÈµÇ´Ù´Â °ÅÁÒ. ¾î¶² ³ÑÀÌ¶óµµ ÀϷùøÈ£¸¦ ºÙ¿©¾ß µÈ´Ù´Â °ÅÁÒ.
auto_increment ´Â º°´Ù¸¥ °ªÀ» ¾È Á־ ÀÚµ¿À¸·Î Áõ°¡Ç϶ó´Â °Ì´Ï´Ù.
±×¸®°í ¹Ø¿¡ PRIMARY KEY (id)¸¦ ¾¸À¸·Î¼ ±âº»Å°´Â ID¶ó´Â °ÍÀ» ÁöÁ¤ÇÏ´Â °Ì´Ï´Ù.
±×·³ À§¿¡ ¾²ÀÎ Type¿¡ ´ëÇؼ À̾߱â ÇÏÁÒ.
int(11)Àº 11ÀÚ¸®ÀÇ Á¤¼öÇü ŸÀÔ´Õ´Ï´Ù.
varchar(20)Àº 20ÄÂ¥¸® ¹®ÀÚ¿À̶ó´Â °Å±¸¿ä.
text´Â °³Ç๮ÀÚ¸¦ Æ÷ÇÔÇÏ´Â ³¡À» ¸ð¸£´Â(?) ¹®ÀÚ¿À̶ó´Â °Ì´Ï´Ù.
TypeÀº º¸Åë À§¿¡ 3°¡Áö¸¸ ¾²¸é º° ÀÌ»ó¾øÀ» °Ì´Ï´Ù.
´Ù¸¥ TypeµéÀº º°·Î ¾²ÀÌÁö´Â ¾ÊÀ¸´Ï ÇÊ¿äÇÒ¶§¸¶´Ù ã¾Æ¼ ÇÏ½Ã¸é µË´Ï´Ù.
ÀÚ ±×·³ ÀÌ $que ¶ó´Â ÁúÀǾ mysql¿¡ Àü´ÞÇսôÙ.
mysql_query( $que, $connect ) or echo"mysql_error()";
mysql_query() ¶ó´Â ÇÔ¼ö°¡ ¹Ù·Î ÁúÀǾ ³Ñ°ÜÁÖ´Â ÇÔ¼öÀÔ´Ï´Ù.
¹°·Ð »ý¼ºÇÒ ¶§»Ó¸¸ ¾Æ´Ï¶ó ÁúÀǾ ³Ñ°ÜÁÙ ¶§ ÀÌ ÇÔ¼ö¸¦ ¾²´Â °Ì´Ï´Ù.
ÀÌ·¸°Ô Çϸé ÀÚ½ÅÀÇ DB¿¡´Â id, name, age, tel_num, address¸¦ Çʵå·Î ÇÏ´Â Å×À̺íÀÌ »ý¼ºµÈ°Ì´Ï´Ù.
3. Table¿¡ ÀÚ·á Ãß°¡
ÀÚ ÀÌÁ¦, Å×À̺íÀ» »ý¼ºÇßÀ¸´Ï ÀڷḦ Ãß°¡Çغ¾½Ã´Ù.
Áö±ÝÀº Å×ÀÌºí¸¸ ¸¸µé¾îÁ®Àֱ⠶§¹®¿¡ ÀÚ·á°¡ Çϳªµµ ¾ø½À´Ï´Ù.
ÀڷḦ InsertÇÒ ¶§´Â ÇʵåÀÇ ¼ø¼´ë·Î ÀÔ·ÂÀ» ÇØ¾ß ÇÕ´Ï´Ù.
¿ì¼± Query ¹®À» ÀÛ¼ºÇØ º¾½Ã´Ù.
$que = "INSERT INTO Humna_info VALUES (
'',
'¾Æ¹«°³',
24,
'000-000-0000',
'¾Æ¹«½Ã
¾Æ¹«±¸ ¾Æ¹«µ¿'
)";
À§ÀÇ "INSERT INTO Å×À̺í¸í VALUES (µ¥ÀÌŸ...)" ¶ó±¸ ÇÏ´Â °ÍÀÌ ÀÚ·áÃß°¡ÇÏ´Â ÁúÀǾîÀÔ´Ï´Ù.
VALUES ( ´ÙÀ½¿¡ º¸¸é óÀ½¿¡ '' ¶ó°í µÇ¾î ÀÖÁÒ?
À̳ÑÀÌ ¹Ù·Î idÀÔ´Ï´Ù. Áï ÀÎÀ§·Î °ªÀ» ³ÖÁö ¾ÊÁÒ.
ÇÏÁö¸¸ À§¿¡¼ Á¤ÀÇÇÑ ´ë·Î auto_increment À̱⠶§¹®¿¡ ÀúÀý·ç ¼ø¼°¡ ¸Å°ÜÁý´Ï´Ù.
±×¸®°í 2¹ø° À̸§Àº ¹®ÀÚ¿ À̱⠶§¹®¿¡ '·Î µÑ·¯½Ñ °Í ÀÔ´Ï´Ù. (" ¾²¸é ¾ÈµË´Ï´Ù.)
±×¸®°í 3¹ø° ³ªÀÌ´Â Á¤¼öÇüÀ̱⠶§¹®¿¡ ' °¡ ÇÊ¿ä¾ø½À´Ï´Ù.
ÀÌ ÁúÀǾ mysql_query¸¦ ÅëÇؼ MySQL¿¡ ÀÏÀ» ³Àµû ½Ãŵ½Ã´Ù.
mysql_query( $que, $connect ) or echo"mysql_error()";
±×·³ ÀÌÁ¦ Human_Info¶ó´Â Å×ÀÌºí¿¡´Â id °ªÀÌ 0ÀΠù ¹ø° °ªÀÌ µé¾î°£°ÅÁÒ.
4. TableÀÇ ÀÚ·á Á¦°Å
ÀÌÁ¦ ¸¸µé¾î ºÃÀ¸´Ï Á¦°Å ÇÏ´Â ¹æ¹ýÀ» ¾Ë¾Æ º¾½Ã´Ù.
Á¦°ÅÇÏ´Â ¹æ¹ýÀº Ãß°¡ÇÏ´Â °Íº¸´Ù ´õ ½±½À´Ï´Ù.
$que = "delete from Human_info where id=0";
mysql_query( $que, $connect );
delete from Å×À̺í¸í where Á¶°Ç¹® ÇÏ¸é µË´Ï´Ù. ±×·¯°í $que¸¦ MySQL¿¡ ³Ñ°ÜÁÖ¸é Áö¿ó´Ï´Ù.
À§ÀÌ ¿¹¿¡¼´Â Human_Info¶ó´Â Å×ÀÌºí¿¡¼ id°ªÀÌ 0ÀÎ ³ÑÀ» Áö¿ì¶ó´Â °ÅÁÒ.
where id=0 ÇßÀ¸´Ï±ñ¿ä.
¸¸¾à where age=20 Çϸé Human_info Å×ÀÌºí¿¡¼ age=20 ÀγѵéÀº ¸ðµÎ Áö¿ìÁÒ.
5. TableÀÇ ÀÚ·á ¼öÁ¤
ÀÚ·áÀÇ ¼öÁ¤¹æ¹ýµµ ¸Å¿ì ½±½À´Ï´Ù.
$que = "UPDATE Human_Info SET name='¸·µÕÀÌ' WHERE id=0";
mysql_query( $que, $connect );
¼öÁ¤ÇÒ ¶§´Â "UPDATE Å×À̺í¸í SET ¼öÁ¤ÇÒ³Ñ=¼öÁ¤ÇÒ°ª WHERE Á¶°Ç¹®" ÇÏ¹È µË´Ï´Ù.
ÄÞ¸¶(,)¸¦ ÀÌ¿ëÇؼ ¿©·¯°³¸¦ ¹Ù²Ü¼ö ÀÖ½À´Ï´Ù.
6. TableÀÇ ÀÚ·á Ãâ·Â
ÀÚ ÀÌÁ¦ ¸¸µé°í, Áö¿ì°í, ¼öÁ¤ÇÏ´Â °É ¾Ë¾ÒÀ¸´Ï ¿øÇÏ´Â ÀڷḦ Å×ÀÌºí¿¡¼ ºÒ·¯¿À´Â ¹æ¹ýÀ» Çغ¾½Ã´Ù.
$que = "SELECT * FROM Human_Info";
$data = mysql_query( $que, $connect );
¹Ù·Î SELECT, FROMÀ» ÀÌ¿ëÇؼ °¡Á®¿É´Ï´Ù.
* ´Â ¸ðµç °ÍÀ» °¡Á®¿À¶ó´Â °Ì´Ï´Ù.
¸¸¾à name¸¸ ÇÊ¿äÇÏ´Ù¸é SELECT name FROM Human_Info ¶ó±¸ ÇÏ¸é µÇ°í¿ä.
name°ú age°¡ ÇÊ¿äÇϸé SELECT name, age FROM Human_Info ¶ó°í ÇÏ¸é µÇÁÒ.
Query¹®À» mysql_query¸¦ ÅëÇؼ MYSQL¿¡ Àü´ÞÇϸé mysql_query() ÇÔ¼ö´Â ãÀº °á°ú¸¦ return ÇÏ°Ô µË´Ï´Ù.
À§¿¡¼´Â $data¶ó´Â º¯¼ö¿¡ °á°ú°ªÀ» ÀúÀåÇÏ¿´ÁÒ.
±×·³ $data º¯¼ö¾È¿¡´Â ãÀº °á°ú°¡ ¹è¿ÀÇ ÇüÅ·ΠÀԷµǾîÁ® ÀÖ½À´Ï´Ù.
±×·³ ¿ì¼± ¸î °³°¡ ã¾ÆÁ³´ÂÁö ÇÔ ¾Ë¾Æº¾½Ã´Ù.
$total = mysql_affected_rows();
À§¿Í °°ÀÌ Çϸé ÃÑ ¸î °³°¡ ã¾ÆÁ³´ÂÁö ¾Ë¼ö ÀÖ½À´Ï´Ù.
mysql_affected_rows() À̶ó´Â ÇÔ¼ö´Â ã¾ÆÁø °ªÀÇ °¹¼ö¸¦ return ÇÕ´Ï´Ù.
ÀÚ ±×·³ ÀÌÁ¦ $data¾È¿¡ ÀÖ´Â ³»¿ëÀ» Ãâ·ÂÇϱâ·Î Çغ¾½Ã´Ù.
Ãâ·ÂÇϱâ À§Çؼ´Â mysql_data_seek($data,$i) ¶ó´Â ÇÔ¼ö¸¦ ¾Ë¾Æ¾ß ÇÕ´Ï´Ù.
mysql_data_seek()´Â $data ÆÄÀÏ¿¡¼ $i ¹ø°ÀÇ µ¥ÀÌÅ͸¦ ÁöÁ¤½ÃÄÑ ³õ´Â ÇÔ¼öÀÔ´Ï´Ù.
Áï mysql_data_seek($data,0) À̶ó°í Çϸé ã¾ÆÁø °á°úÀÇ Ã¹ ¹ø° µ¥ÀÌŸ¸¦ ÁöÁ¤ÇØ ³õ´Â °ÅÁÒ.
ÁöÁ¤À» ÇßÀ¸¸é ´ÙÀ½°ú °°Àº ¹æ¹ýÀ¸·Î °ªÀ» °¡Á®¿É´Ï´Ù.
$human = mysql_fetch_array( $data );
mysql_fetch_array()´Â $data¿¡¼ ÁöÁ¤µÈ ³ÑÀÇ °ªÀ» ¹è¿·Î return ÇÕ´Ï´Ù.
Áï $human[id], $human[name], $human[age], $human[tel_num], $human[address] °¡ µÇ´Â°ÅÁÒ.
Ãâ·ÂÇÒ ¶§´Â echo"À̸§ : $human[name], ³ªÀÌ : $human[age]»ì"·Î ÇÏ¸é µÇÁÒ.
À̸§ : ¾Æ¹«°³, ³ªÀÌ : 20»ì
À§¿¡ ó·³ Ãâ·Â µÇ°ÚÁÒ.
±×·³ ¸®½ºÆ®Ã³·³ ÁÖ¸£¸¤ Çϱâ À§Çؼ´Â for¹®À» »ç¿ëÇÏ¸é µË´Ï´Ù.
for($i = 0; $i < $total; $i++)
{
mysql_data_seek($data,$i);
$human = mysql_fetch_array( $data );
echo"À̸§ : $human[name], ³ªÀÌ : $human[age]»ì
";
}
À§¿Í °°ÀÌ Çϸé ÁÖ¸£¸¤ ³ª¿À°ÚÁÒ?
½±ÁÒ?
±×·³ select ¹®¿¡ ´ëÇؼ ¸î°¡Áö¸¸ ´õ Àû°Ú½À´Ï´Ù.
$que = "SELECT * FROM Å×À̺í¸í order by id";
À§¿¡ ó·³ Çϸé order by id ¶ó´Â ±¸¹® ¶§¹®¿¡ idÀÇ Á¤·Ä¼øÀ¸·Î °á°ú°¡ ³ª¿É´Ï´Ù.
¸¸¾à ¿ª¼øÀ¸·Î ÇÒ·Á¸é order by id desc ¶ó°í ÇÏ¸é µÇÁö¿ä.
±×¸®°í limit ¼ýÀÚ ÇÏ¸é ¼ýÀÚ¸¸ÅÀÇ °¹¼ö¸¸ ³ª¿É´Ï´Ù.
$que = "SELECT * FROM Å×À̺í¸í order by id limit 10";
À§¿¡ ó·³ Çϸé 10°³¸¸ ³ª¿ÀÁÒ.
¸¸¾à °Ë»öó·³ ¾î¶² ¹®ÀÚ¿À» Æ÷ÇÔÇÏ°í ÀÖ´Â ³ÑÀ» ãÀ» ¶§´Â ´ÙÀ½°ú °°ÀÌ ÇÏ¸é µË´Ï´Ù.
À̸§¿¡ "±è"ÀÌ Æ÷ÇÔµÈ ³ÑÀ» ã´Â ´Ù°í ÇսôÙ.
$que = "SELECT * FROM Å×À̺í¸í WHERE name LIKE '%±è%'";
À§¿¡¼ WHERE¶ó´Â ³ÑÀº ¾Æ±îµµ ³ª¿ÔÁö¸¸ Á¶°ÇÀ» ºÙÀÏ ¶§ ¾²´Â ³ÑÀÔ´Ï´Ù.
±×¸®°í LIKE '%°Ë»ö¹®ÀÚ%' ¶ó±¸ µ¡ ºÙÀ̸é name ÇʵåÁß "±è" À̶ó´Â ¹®ÀÚ°¡ ÀÖ´Â ³ÑÀ» ã¾Æ¶ó´Â °Ì´Ï´Ù. |
|
̵̧ : 326 |
̵̧
¸ñ·Ï
|
|
|  |
|