참고 cubrid_connect() 함수를 사용한다고 해서 데이터베이스 서버에 실제로 연결되는 것은 아니다. 데이터베이스 서버 연결이 필요한 함수가 호출되었을 때 실제로 연결이 이루어진다.
$con = cubrid_connect("192.168.1.12", 12345, "demodb");
if($con) {
$req = cubrid_execute($con, "select * from dept");
if($req) {
while ($row = cubrid_fetch($req)) {
echo $row["name"];
echo $row["position"];
}
cubrid_close_request($req);
}
cubrid_disconnect($con);
}
$req = cubrid_execute($con, "select * from person");
if($req) {
$coltypes = cubrid_column_types($req);
$colnames = cubrid_column_names($req);
while (list($key, $coltype) = each ($coltypes))
echo $coltype;
while (list($key, $colname) = each ($colnames))
echo $colname
cubrid_close_request(#req);
}
$req = cubrid_execute($con, "select * from person");
if($req) {
cubrid_move_cursor ($req, 10, CUBRID_CURSOR_CURRENT);
while ($row = cubrid_fetch($req, CUBRID_ASSOC)) {
echo $row["id"];
echo $row["name"];
}
}
while (list($id, $name) = cubrid_fetch($req, CUBRID_NUM)) {
echo $id;
echo $name;
}
while ($row = cubrid_fetch($req, CUBRID_ASSOC)) {
echo $row["id"];
echo $row["name"];
}
클래스, 가상 클래스, 속성, 메소드, 트리거, 제약 조건 등 데이터베이스의 스키마 정보는 cubrid_schema() 함수를 호출하여 얻을 수 있다. cubrid_schema() 함수의 리턴 값은 2차원 배열이다.
$attrs=cubrid_schema($con,CUBRID_SCH_ATTRIBUTE,"person");
if ($attrs != -1) {
while (list ($key, $attr) = each($attrs)) {
echo $row["NAME"];
echo $row["DOMAIN"];
}
}
에러가 발생하면 대부분의 PHP 인터페이스 함수는 에러 메시지를 출력하고 false나 -1을 반환한다. cubrid_error_msg(), cubrid_error_code() 그리고 cubrid_error_code_facility() 함수를 사용하면 각각 에러 메시지, 에러 코드, 에러 기능 코드를 확인할 수 있다.
cubrid_error_code_facility() 함수의 결과 값은 CUBRID_FACILITY_DBMS (DBMS 에러), CUBRID_FACILITY_CAS (CAS 서버 에러), CUBRID_FACILITY_CCI (CCI 에러), CUBRID_FACILITY_CLIENT (PHP 모듈 에러) 중 하나이다.