//=$secondUrl?>
PHP
데이터베이스 질의
PHP에서 데이터베이스로 쿼리문 보내기
이번에 배울 내용은 php에서의 데이터베이스 쿼리문 보내기입니다.
mysql에 접속하여(root로) myClass 라는 DB를 생성해 주세요.
그리고 다음의 테이블을 myClass안에 넣어보겠습니다.
이테이블의 이름은 myClass_tb로 하겠습니다.
CREATE TABLE myclass_tb( id varchar(12) not null, primary key name varchar(8) not null, sex char(2), age int, point int, address varchar(7) primary key(id));
그럼 테이블생성을 하겠습니다. query()함수를 사용하여 myclass 데이터베이스에 myclass_tb테이블을 생성하자
아래의 소스는 테이블 생성 및 레코드 입력을 한번에 하는 소스이다. 이 소스의 연습이 끝나고 테이블 생성 따로 테이블 생성 따로 연습해보자.
<?php echo "query()함수를 이용한 테이블 생성 <br />"; $host = 'localhost'; $user = 'root'; $pw = 'root'; $dbName = 'myClass'; $mysqli = new mysqli($host, $user, $pw, $dbName); $sql = "CREATE TABLE myclass_tb ("; $sql = $sql."id varchar(12) not null,"; $sql = $sql."name varchar(8) not null,"; $sql = $sql."sex char(2),"; $sql = $sql."age int,"; $sql = $sql."point int,"; $sql = $sql."address varchar(7),"; $sql = $sql."primary key(id));"; if($mysqli->query($sql)){ echo '테이블 생성 완료'; }else{ echo '테이블 생성 실패'; } $sql = "insert into myclass_tb values"; $sql = $sql."('dooly', '둘리', '남', 10, 100, 'korea')"; $mysqli->query($sql); $sql = "insert into myclass_tb values"; $sql = $sql."('asimo', '아시모', '남', 18, 200, 'honda')"; $mysqli->query($sql); $sql = "insert into myclass_tb values"; $sql = $sql."('partner', '파트너', '남', 8, 180, 'toyota')"; $mysqli->query($sql); $sql = "insert into myclass_tb values"; $sql = $sql."('hades', '하데스', '남', 45, 350, 'greece')"; $mysqli->query($sql); $sql = "insert into myclass_tb values"; $sql = $sql."('lee', '이연희', '여', 20, 600, 'korea')"; $mysqli->query($sql); ?>
위와같이 입력을 하면 콘솔에서 MySQL접속하지 않고 테이블 및 레코드 입력까지 할수 있습니다.
저 소스를 웹브라우저에서 실행후에 mysql에 접속해서 테이블이 있는지 레코드가 다 입력되었는지 확인해보자.
이번엔 레코드와 필드의 개수를 구해보겠습니다.
레코드의 수를 세기 위해서 num_rows를 사용합니다.
<?php $host = 'localhost'; $user = 'root'; $pw = 'root'; $dbName = 'myClass'; $mysqli = new mysqli($host, $user, $pw, $dbName); $sql = 'SELECT * FROM myClass_tb'; $res = $mysqli->query($sql); echo 'count is '.$res->num_rows; ?>
이번엔 필드 수를 세어 보겠습니다.
필드 수를 세기 위해서는 field_count를 사용합니다.
<?php $host = 'localhost'; $user = 'root'; $pw = 'root'; $dbName = 'myClass'; $mysqli = new mysqli($host, $user, $pw, $dbName); $sql = 'SELECT * FROM myClass_tb'; $res = $mysqli->query($sql); echo 'count is '.$res->field_count; ?>
//=$langList['bottomThankyou'][$langMode]?>