2009년 10월 19일 월요일

PHP & MySQL Select

SELECT 구문은 데이터베이스로부터 데이터를 선택할때 사용됩니다.




데이터베이스 테이블로부터 데이터 선택하기

SELECT 구문은 데이터베이스로부터 자료를 선택할때 사용됩니다.


문법

SELECT column_name(s)

FROM table_name

위와같이 "SELECT 컬럼이름 FROM 테이블이름" 과 같은 형태를 가집니다. 컬럼이름은 하나나, 혹은 그 이상의 여러개가 올 수 있습니다.

PHP가 위의 구문을 실행하도록 하려면 mysql_query() 함수를 사용해야 합니다. 이 함수는 쿼리나 명령을 MySQL 연결로 전송하는데 사용됩니다.


예제

아래의 예제는 "Persons" 테이블에 저장된 모든 데이터를 선택합니다 (문자열 * 을 사용하면 테이블안의 모든 데이터를 선택합니다):

<?php

$con = mysql_connect("localhost","peter","abc123");

if (!$con)

{

die('Could not connect: ' . mysql_error());

}
mysql_select_db("my_db", $con);
$result = mysql_query("SELECT * FROM Persons");
while($row = mysql_fetch_array($result))

{

echo $row['FirstName'] . " " . $row['LastName'];

echo "<br />";

}
mysql_close($con);

?>


위의 예제에서는 $result 변수에 mysql_query() 함수에 의해 반환된 데이터를 저장합니다.

다음으로 레코드셋으로부터 첫번째 행을 배열로서 반환받기 위해서 mysql_fetch_array() 함수를 사용합니다. mysql_fetch_array() 를 호출할때마다 각각 레코드셋의 다음행을 반환합니다. while 반복문은 레코드셋의 모든 레코드들을 돌면서 레코드의 수만큼 반복됩니다.

각 행의 값을 출력하기 위해, 예제에서는 $row 변수를 사용합니다. ($row['FirstName']와 $row['LastName'])


위 코드의 출력 결과는 다음과 같습니다:


Peter Griffin

Glenn Quagmire




결과를 HTML 테이블로 표시하기

다음 예제는 위쪽에 있는 예제와 똑같은 데이터를 선택한다음, 데이터를 HTML 테이블안에 표시합니다:


<?php

$con = mysql_connect("localhost","peter","abc123");

if (!$con)

{

die('Could not connect: ' . mysql_error());

}



mysql_select_db("my_db", $con);



$result = mysql_query("SELECT * FROM Persons");



echo "<table border='1'>

<
tr>

<th>Firstname</th>

<th>Lastname</th>

</tr>";
while($row = mysql_fetch_array($result))

{

echo "<tr>";

echo "<td>" . $row['FirstName'] . "</td>";

echo "<td>" . $row['LastName'] . "</td>";

echo "</tr>";

}

echo "</table>";
mysql_close($con);

?>


위 코드의 출력 결과는 아래와 같습니다:

Firstname Lastname
Glenn Quagmire
Peter Griffin

댓글 없음:

댓글 쓰기