1. mysql_connect
(1) 특징 : MySQL서버에 연결을 시도하는 함수이다. 성공시에는 MySQL 링크식별자(link identifier)
를, 에러인 경우에는 False를 반환한다.
(2) 사용법
int mysql_connect(hostname,username,password)
(3) 사용예
$db_conn = mysql_connect("localhost","posein","1234");
2. mysql_select_db
(1) 특징 : MySQL 데이터베이스를 선택한다. 위의 mysql_connect함수로 서버와 연결한 후 DB를 선택
할 때 사용된다. 성공하면 True, 실패하면 False를 반환한다.
(2) 사용법
mysql_select_db(database_name,int[link_indentifier]);
(3) 사용예
$db_conn=mysql_connect("localhost","posein","1234");
mysql_select_db("testdb",$db_conn);
3. mysql_query
(1) 특징 : 문자열형식의 SQL query를 MySQL로 보낸다. 즉 이 함수는 MySQL서버에 대한 사용자의
query를 실행하고자 할 때 사용한다. insert, update, delete쿼리문이 성공적으로 수행된
경우에는 true를, 그렇지 않은 경우에는 false를 반환하고 select문을 전송하는 경우에는
실행 결과로 검색된 레코드 세트만을 가리키는 새로운 식별자(result identifier)를 반환
한다. 참고로 이 함수를 사용하려면 MySQL 서버에 접속되어 있어야 하며 DB도 선택되어
있어야 한다.
(2) 사용법
int mysql_query(query,int[link_identifier])
(3) 사용예
1) 테이블을 생성해보자.(crea_tb.php)
<?
$db_conn = mysql_connect("localhost","posein","1234");
mysql_select_db("testdb",$db_conn);
$result = mysql_query("create table data(id int)",$db_conn);
?>
2) 테이블을 삭제해보자.(drop_db.php)
<?
$db_conn = mysql_connect("localhost","posein","1234");
mysql_select_db("testdb",$db_conn);
$result = mysql_query("drop table data",$db_conn);
?>
3) if문과 조합하여 특정쿼리문이 제대로 연동하는 지 테스트 해보기
<?
$db_conn = mysql_connect("localhost","posein","1234");
mysql_select_db("testdb",$db_conn);
$result=mysql_query("insert into board(name,tel,mail)
values('posein',111-1111','posein@korea.com')",$db_conn);
if (!$result)
{
echo "fail";
}
else
{
echo "success";
}
?>
4. mysql_result
(1) 특징 : 결과에서 데이터를 구하는 함수이다. 결과로부터 한 셀의 항목을 반환한다. 참고로
좀 더 빠른 결과는 mysql_fetch_row(), mysql_fetch_array(), mysql_fetch_object()를
사용하는 것이 좋다.
(2) 사용법
int mysql_result(int result, int row, mixed[field])
=> 첫번째인자값인 result는 mysql_query문에서 선언된 변수이며, 두번째 인자는 선택한
필드의 row값이다. 세번째인자는 선택하고자하는 필드이다.
(3) 사용예
<?
$db_conn = mysql_connect("localhost","posein","1234");
mysql_select_db("testdb",$db_conn);
$result = mysql_query("select id,name from name",$db_conn);
$name = mysql_result($result,0,"name");
$userid = mysql_result($result,0,"id");
echo $name.":";
echo $userid;
?>
=> 만약 테이블이 아래와 같다면
mysql> select * from name;
+----------+------+
| id | name |
+----------+------+
| zzang | hong |
| weppy | sung |
| power | lim |
| ujinzone | ujin |
+----------+------+
결과는 hong:zzang 가 된다.
5. mysql_affected_rows
(1) 특징 : 연결된 데이터베이스의 마지막 수행된 질의에 영향을 받은 레코드의 개수를 돌려주는
함수이다. 보통 삽입, 삭제, 갱신된 행들의 개수를 알아내는데 사용된다. 만약 마지막에
실행된 쿼리가 where절이 없는 delete라면 이 함수는 0(zero)를 리턴한다. select쿼리는
mysql_nun_rows()함수를 사용하는 것이 좋다.
(2) 사용법
int mysql_affected_rows(int link)
(3) 사용예
<?
$db_conn = mysql_connect("localhost","root","posein");
mysql_select_db("testdb",$db_conn);
$query = "select id from name";
$result = mysql_query($query,$db_conn);
$total = mysql_affected_rows($db_conn);
print("$total 개 선택되었습니다.");
?>
=> 테이블이 위와 같다면 결과는 '4 개 선택되었습니다.' 가 출력된다.
6. mysql_num_rows
(1) 특징 : result의 row개수를구한다. 참고로 mysql_affected_rows함수가 참조하는 것과 다르다.
즉 mysql_affected_row는 초기 db연결식별자를 사용하고 mysql_num_row는 쿼리값이 들어
있는 식별자를 사용한다. delete문과 같은 쿼리는 mysql_affected_row를 사용해야 한다.
(2) 사용법
int mysql_num_rows(int result)
(3) 사용예
<?
$db_conn = mysql_connect("localhost","root","posein");
mysql_select_db("testdb",$db_conn);
$query = "select id from name";
$result = mysql_query($query,$db_conn);
$total = mysql_num_rows($result);
print("$total 개 선택되었습니다.");
?>
7. mysql_create_db
(1) 특징 : 새로운 데이터베이스를 생성해 주는 함수이다.
(2) 사용법
int mysql_create_db(database_name, int[link_identifier]);
(3) 사용예
<?
$db_conn = mysql_connect("localhost","root","1234");
$result = mysql_create_db("testdb3",$db_conn);
if ($result)
{
echo ("데이터베이스가 생성되었습니다.");
}
else
{
echo ("데이터베이스 생성에 실패했습니다.");
}
?>
8. mysql_drop_db
(1) 특징 : 데이터베이스를 삭제하는 함수이다
(2) 사용법
int mysql_drop_db(database_name,int[link_identifier]);
(3) 사용예
<?
$db_conn = mysql_connect("localhost","root","1234");
$result = mysql_drop_db("testdb3",$db_conn);
if ($result)
{
echo ("데이터베이스가 삭제되었습니다.");
}
else
{
echo ("데이터베이스 삭제에 실패했습니다.");
}
?>
9. mysql_close
(1) 특징 : MySQL서버와의 연결을 닫는 함수이다. 일반적으로는 사용안해도 되지만 사용하도록
한다.
(2) 사용법
mysql_close(int link)
(3) 사용예
$db_conn = mysql_connect("localhost","posein","1234");
mysql_close($db_conn);
10. mysql_db_query
(1) 특징 : 데이터베이스선택과 쿼리를 한번에 해주는 함수이다.
(2) 사용법
int mysql_db_query(database_name, query);
(3) 사용예
$result = mysql_db_query("testdb", "select * from name");
11. mysql_fetch_array
(1) 특징 : 쿼리결과를 배열 형태로 반환한다. mysql_result함수와 비슷한 기능을 한다. 배열의
형태로 반환함으로 속도가 빠르다. select문을 이용하여 테이블에서 여러 개의 필드를
선택한 후 결과를 한 줄씩 배열형태로 반환할 때 사용한다. 더 이상 반환할 것이 없으면
false를 반환한다. mysql_fetch_row의 확장판이다.
(2) 사용법
array mysql_fetch_array(result, int [resutl type]);
(3) 사용예
<?
$db_conn = mysql_connect("localhost","posein","1234");
$result = mysql_db_query("testdb","select * from name");
while($row = mysql_fetch_array($result))
{
echo $row["id"];
echo $row["name"];
}
?>
12. mysql_fetch_object
(1) 특징 : mysql_fetch_array와 같은 기능을 하나 다른점이 있다면 결과를 객체형으로 가져온다.
(2) 사용법
object mysql_fetch_object(int result, [int result type]);
(3) 사용예
<?
$db_conn = mysql_connect("localhost","posein","1234");
$result = mysql_db_query("testdb","select * from name");
while($row = mysql_fetch_object($result))
{
echo $row->id;
echo $row->name;
}
?>
=> 결과는 zzanghongweppysungpowerlimujinzoneujin
13. mysql_data_seek
(1) 특징 : 레코드 세트내에서 원하는 레코드의 위치로 이동한다. 성공하면 true를, 실패하면 false
를 반환한다. 데이터값을 받으려면 mysql_fetch_row()함수나 mysql_fetch_row의 확장격
함수인 mysql_fetch_array()함수를 같이 사용해야 한다.
(2) 사용법
int mysql_data_seek(int result, int row_number);
=> row_number는 0부터 시작한다.
(3) 사용예
<?
$mysql_conn=mysql_connect("localhost","root","posein");
mysql_select_db("testdb",$mysql_conn);
$query="select * from name";
$result=mysql_query($query);
$row_len=mysql_data_seek($result,1);
$row=mysql_fetch_array($result);
echo "$row[1] $row[0]";
?>
=> 만약 table이 아래와 같다면
mysql> select * from name;
+----------+------+
| id | name |
+----------+------+
| zzang | hong |
| weppy | sung |
| power | lim |
| ujinzone | ujin |
+----------+------+
결과는
sung weppy
이다.

Comments List