PHP MSSQL 연동 에러 질문입니다.

PHP MSSQL 연동 에러 질문입니다.

QA

PHP MSSQL 연동 에러 질문입니다.

본문

외부 MSSQL 연동 후 프로시저 실행 시키는데 코드를 실행시키면 

자꾸 

SQLSTATE[42000]: [Microsoft][ODBC Driver 17 for SQL Server][SQL Server]하위 쿼리에서 값을 둘 이상 반환했습니다. 하위 쿼리 앞에 =, !=, <, <=, >, >= 등이 오거나 하위 쿼리가 하나의 식으로 사용된 경우에는 여러 값을 반환할 수 없습니다.

 

이 문구가 출력됩니다.

 

어느 부분을 수정해야 될까요?

 


try {
    // PDO 객체를 생성하여 MSSQL에 연결합니다.
    $conn = new PDO("sqlsrv:Server=$serverName;Database=$dbname", $user, $password);
 
    // 에러 모드를 예외로 설정합니다.
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
 
    // 저장 프로시저를 실행할 SQL 문을 작성합니다.
    // $sql = "EXEC UP_H1CTI_OPDIN_C$002 @CLINIC_YMD, @CLINIC_TIME, @DEPT_CD, _EMPL_NO, @MEMO, @COME_TYPE_GB, @PTNT_NM, @PTNT_PRSN_NO, @PHONE_NO, @RSRV_USER_GB";
    $sql = "{call UP_H1CTI_OPDIN_C$002 (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)}";
   
    // PDOStatement 객체를 생성합니다.
    $stmt = $conn->prepare($sql);
 
    // 저장 프로시저에 전달할 매개 변수 값을 설정합니다.
    $param1 = $ReserveDate;
    $param2 = $ReserveTime;
    $param3 = $DEPT_CD;
    $param4 = $DOCT_CD;
    $param5 = $memo;
    $param6 = $come_type;
    $param7 = $ReserveName;
    $param8 = $Jumin;
    $param9 = $tel;
    $param10 = "P";
    $msg = null;
    $stmt->bindParam(1, $param1, PDO::PARAM_STR);
    $stmt->bindParam(2, $param2, PDO::PARAM_STR);
    $stmt->bindParam(3, $param3, PDO::PARAM_STR);
    $stmt->bindParam(4, $param4, PDO::PARAM_INT);
    $stmt->bindParam(5, $param5, PDO::PARAM_STR);
    $stmt->bindParam(6, $param6, PDO::PARAM_STR);
    $stmt->bindParam(7, $param7, PDO::PARAM_STR);
    $stmt->bindParam(8, $param8, PDO::PARAM_STR);
    $stmt->bindParam(9, $param9, PDO::PARAM_STR);
    $stmt->bindParam(10, $param10, PDO::PARAM_STR);
 
    // 저장 프로시저를 실행합니다.
    $stmt->execute();
 
    // 결과를 가져옵니다.
    $result = $stmt->fetchAll();
 
    // 결과를 처리합니다.
    foreach ($result as $row) {
        // 각 행의 필드 값을 출력합니다.
        echo "필드1: " . $row['MSG'] . "<br>";
    }
 
} catch (PDOException $e) {
    // 연결 중 오류가 발생했을 때 처리할 예외 코드를 작성합니다.
    echo "Connection failed: " . print_r($e);
}

이 질문에 댓글 쓰기 :

답변 2

답변을 작성하시기 전에 로그인 해주세요.
전체 55
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT