상세 컨텐츠

본문 제목

PHP에서 MSSQL 연동하여 쿼리실행하기, sqlsrv로 MS-SQL 접속하기

IT공부방/MSSQL

by 동해둘리 2019. 5. 3. 14:37

본문

반응형

PHP에서 MSSQL 에 연동하거나 접속 후 쿼리를 실행하는 과정을 정리해 보겠습니다

 

MS-SQL 은 IIS 서버와 함께 설치되게 되는데요, 윈도우 운영체제를 기반으로 하고 있기 때문에 대부분 ASP 를 이용하여 코딩을 하게됩니다. 하지만, 원격지 또는 윈도우 상에서 PHP 코드로 접속해야 하는 경우가 있는데요, 이때 PHP코드에서 MS-SQL 서버에 접속하는 방법을 정리해 보겠습니다.

 

우선 MS-SQL에 접속하기위해 PHP가 사용하는 드라이버는 mssql 과 sqlsrv 두가지입니다

 

mssql 드라이버가 먼저 사용되었고, 2008년 이후부터는 sqlsrv 드라이버가 제공되고 있는데요, mssql 드라이버는 커뮤니티 기반으로 만들어진 드라이버이고, sqlsrv(SQL Server Dirver for PHP) 는 Microsoft 가 공식적으로 지원하는 드라이버 입니다. 

 

아울러, 최근에 업데이트가 이루어진 PHP7.0 부터는 아에 mssql_connect() 함수를 제공하지 않습니다.

 

저는, 윈도우기반의 IIS 서버에 extension 으로 PHP 를 설치하고, 기존에 운영중인 ASP 코드와 MS-SQL로 이루어진 환경에 접근해서 MS-SQL 서버에 접속하는 다소 복잡한 환경에서 작업을 하고 있습니다만,

 

기본적인 sqlsrv 사용법은 동일하기 때문에 아래코드를 참고하시면 기본적인 접속/ 쿼리는 가능합니다.

 

<?php 
$serverName = "서버아이피";
$connectionOptions = array(
    "database" => "database_name", // 데이터베이스명
    "uid" => "user_name",   // 유저 아이디
    "pwd" => "user_passwd"    // 유저 비번
);

// DB커넥션 연결
$dbconn = sqlsrv_connect($serverName, $connectionOptions); 

 

// 쿼리

$query = "SELECT name, age FROM test"; 

// 쿼리를 실행하여 statement 를 얻어온다

$stmt = sqlsrv_query($dbconn, $query);

 

// statement 를 돌면서 필드값을 가져온다

while ($row = sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC))

{

    echo $row['name'];

    echo $row['age'];

    echo "<br>";

}

 

// 데이터 출력후 statement 를 해제한다

sqlsrv_free_stmt($stmt);

 

// 데이터베이스 접속을 해제한다

sqlsrv_close($dbconn);


?>

 

다음번 포스팅에서는 MS-SQL 에서 여러개의 열을 읽어와서 이를 Paging 하는 방법을 포스팅 할까 합니다

반응형

관련글 더보기

댓글 영역