>백엔드 개발 >PHP 튜토리얼 >asp.net 데이터베이스 연결 및 데이터베이스 연결

asp.net 데이터베이스 연결 및 데이터베이스 연결

WBOY
WBOY원래의
2016-07-29 08:34:461033검색

4. 데이터베이스 연결
PHP를 통해 쉽게 데이터베이스에 연결하고 데이터를 요청하여 웹 사이트에 표시할 수 있으며 데이터베이스의 데이터를 수정할 수도 있습니다. MySQL은 매우 인기 있는 데이터베이스이며, 인터넷에는 PHP와 MySQL에 대한 많은 튜토리얼이 있습니다. MySQL은 무료이므로 많은 사람들의 관심을 끌 수 있습니다. 광범위한 응용 프로그램으로 인해 여기에서는 MySQL 사용에 대해 자세히 설명하고 싶지 않습니다. Oracle은 엔터프라이즈 애플리케이션에서 널리 사용되므로 Oracle을 사용하여 PHP와 데이터베이스 간의 연결을 소개하겠습니다. Oracle 데이터베이스의 설계 원칙은 논의 범위를 벗어나므로 언급하지 않겠습니다.
PHP는 Oracle에 연결하기 위한 두 가지 함수 세트, 즉 ORA_ 및 OCI 함수를 제공합니다. ORA_ 함수는 약간 오래되었습니다. OCI 기능 업데이트로 더 좋아졌다고 하네요. 둘의 사용 구문은 거의 동일합니다. 앞서 언급했듯이 PHP 설치 옵션은 두 가지 모두를 지원해야 합니다.
Microsoft Windows 플랫폼에 PHP3를 지원하는 Apache 서버를 설치하는 방법과 Oracle 데이터베이스에 대한 자세한 내용을 보려면 다음 URL을 참조하세요: www.csoft.net/~vsbabu/articles/oraphp.html.
4.1 연결
if ($c
{
echo "SUCCESS ! 데이터베이스에 연결됨n";
}
else
{
echo "실패 :-( 데이터베이스n에 연결할 수 없습니다.";
}
Ora_Logoff($conn);
phpinfo();
?>
위 코드는 TNSNAME에 의해 정의된 Oracle 데이터베이스 이름, 사용자 이름 및 비밀번호(tnsnames.ora 파일에 지정됨)를 사용하여 데이터베이스에 연결합니다. 연결 성공에 따라 ora_logon 함수는 다음을 반환합니다. 0이 아닌 연결. ID는 $conn 변수에 저장됩니다.
4.2 쿼리
데이터베이스에 대한 연결이 준비되었다고 가정하고 실제로 데이터베이스에 쿼리를 적용해 보겠습니다.다음 코드는 연결 및 쿼리의 일반적인 예를 보여줍니다.
/*
* 데이터베이스에 연결하고 쿼리를 실행합니다
*/
function printoraerr($in_cur)
{
// Oracle에 오류가 있는지 확인
// 오류가 있으면 표시
// 포인터가 활성화되면 Oracle에 대한 각 요청 후에 이 함수를 호출합니다
if (ora_errorcode($in_cur))
echo "Oracle 코드 - ".ora_error($in_cur)."n";
return;
}
/**메인 프로그램*/
if (!($c
{
echo "데이터베이스 연결 실패";
exit;
}
echo "연결로 연결됨 - $conn< ;br>n";
echo "커서 열기 ...
n";
$cursor=ora_open($conn); printoraerr($cursor);
echo "커서 열기 - < ;b>$cursorn";
$qry="select user,sysdate from Dual";
echo "쿼리 구문 분석 중 $qry ..
n" ;
ora_parse($cursor,$qry,0); printoraerr($cursor);
echo "쿼리 구문 분석된
n";
echo "커서 실행 중 ...
n ";
ora_exec($cursor); printoraerr($cursor);
echo "실행된 커서
n";
echo "커서를 가져오는 중 ...< br>n";
while(ora_fetch($cursor))
{
$user=ora_getcolumn($cursor,0); printoraerr($cursor);
$sysdate=ora_getcolumn($cursor ,1); printoraerr($cursor );
echo " row = $user, $sysdate
n";
}
echo "모든 기록을 가져왔습니다< ;br>n";
echo "커서 닫는 중 ...
n";
ora_close($cursor);
echo "닫힌 커서
n";
echo " oracle에서 로그오프하는 중... < ;br>n";
ora_logoff($conn);
echo "oracle
n에서 로그오프하는 중";
?>
(번역가의 참고: 위의 코드 조각에는 주석이 없습니다. PHP 설명서의 Oracle 데이터베이스 함수 섹션을 참조하세요.
4.3 결과 표시
다음 코드는 데이터베이스를 쿼리하고 결과를 출력하는 방법을 보여줍니다.
< ?
function printoraerr($in_cur, $conn )
{
// 오라클에 오류가 있는지 확인
// 오류가 있으면 표시
// 포인터가 활성화되면 각 Oracle 요청 후에 이 함수를 호출합니다
// 오류가 발생하면 즉시 종료합니다
if(ora_errorcode($in_cur))
{
echo "Oracle 코드 - ".ora_error( $in_cur)."
n";
ora_logoff( $conn);
exit;
}
return;
}
함수 exequery($w_qry,$conn )
{
$cursor=ora_open($conn); printoraerr($cursor,$conn);
ora_parse($cursor,$w_qry,0);
ora_exec($cursor); printoraerr($cursor,$conn);
$numrows=0;
$w_numcols=ora_numcols($cursor);
// 헤더 표시
echo "


n";
for ($i=0;$i< ;$w_numcols;$i )
{
$align =(ora_columntype($cursor,$i)=="NUMBER")?"RIGHT":"LEFT";
echo "t
n";
}
echo "
n";
while(ora_fetch ($cursor))
{
echo "< TR>n";
for ($i=0;$i<$w_numcols;$i )
{
$align= (ora_columntype($cursor,$i)=="NUMBER")? "RIGHT":"LEFT";
if(ora_columntype($cursor,$i)=="LONG")
echo "< TD VALIGN=TOP ALIGN=$align>
".<br>ora_getcolumn($cursor,$i)."
n";
else
echo "
n";
printoraerr($cursor,$conn);
}
$numrows ;
echo "
n"
}
if ($numrows==0)
echo "
n";
else
{
echo "
n";
echo "
n";
echo "
n ";
}
echo "
".ora_columnname($cursor,$i )."
".ora_getcolumn($cursor,$i)."
쿼리가 레코드를 반환하지 않았습니다
카운트$numrowsn";
echo "
n";
ora_close($cursor);
return;
}
// 기본 프로그램
if(! ($c
{
echo "오류: 데이터베이스에 연결할 수 없습니다.";
exit;
}
$qry="SELECT
deptno "부서"
,empno "Emp"
,empnm "이름"
,salary "급여"
FROM
직원
ORDER BY 1,2";
exequery($qry);
ora_logoff($conn);
?>
(번역자 참고 사항: 위 코드 조각에는 주석이 없습니다. PHP 수동 Oracle 데이터베이스 기능 부분)
4.4 HTTP 기반 Oracle 로그인
Oracle 로그인을 확인하려면 PHP 페이지 코드 앞에 다음 코드를 추가합니다. $SID를 올바르게 설정해야 합니다.
if(!isset($PHP_AUTH_USER))
{
Header("WWW-authenticate: basic realm="$SID"");
Header("HTTP/ 1.0 401 Unauthorized");
$title="Login Instructions";
echo "

사이트에 들어갈 권한이 없습니다
n";
exit;
}
else
{
if (!($c
{
Header("WWW-authenticate: basic realm="$SID"");
Header("HTTP/1.0 401 Unauthorized");
$title="Login Instructions";
echo "

사이트에 들어갈 권한이 없습니다
종료;
}
}
?>

위에서는 asp.net 데이터베이스 연결 내용을 포함하여 asp.net 데이터베이스 연결과 데이터베이스 연결을 소개했습니다. PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.