프로시저 사용법좀 알려주십시오 정보
개발자 프로시저 사용법좀 알려주십시오본문
php에서 asp프로시저에 연결하려하는데 도무지 해결이 안됩니다.
아래는 샘플입니다.
$key1 xml 형식으로 처리하는 구문입니다.
$key2 ''처리에 문제가 있나 싶은데 구글링해봐도 잘모르겠네요
mssql_execute($stmt); 오류가 납니다.
Warning: mssql_execute() [function.mssql-execute]: stored procedure execution failed in
$Key1="N'<ROOT>
<DataBlock></DataBlock>
</ROOT>'";
$Key2="N''";
디비에서 직접 아래와 같이 쿼리를 하면 정상적입니다.
exec 프로시저명 @Key1=N'<ROOT>
<DataBlock></DataBlock>
</ROOT>',@Key2=N'',@Key3=1
아래는 전체 소스입니다.
<?php
$hostName="";
$userName=""; //mssql id
$password="";//mssql pass
$dbName="";//mssql db
$conn=mssql_connect($hostName,$userName,$password);
if ($conn) {
mssql_select_db($dbName,$conn);
$stmt=mssql_init("프로시저명",$conn);//프로시저명
$Key1="N'<ROOT>
<DataBlock1></DataBlock1>
</ROOT>'";
$Key2="N''";
$Key3=1;
mssql_bind($stmt,"@Key1",$Key1,SQLVARCHAR);
mssql_bind($stmt,"@Key2",$Key2,SQLVARCHAR);
mssql_bind($stmt,"@Key3",$Key3,SQLINT2);
$result=mssql_execute($stmt);
$arr=mssql_fetch_row($result);
echo"$arr[Key1]";
mssql_close($conn);
}else{echo"연결실패";}
?>
추천
0 비추천
0
0 비추천
0
댓글 2개

우선 phpinfo() 이용하여 mssql 확장되어 있는지 확인 해봐야합니다.
없으면 패치확장하구요 현재 위 방식 보니 php4 혹은 php5 최신 버전 아닌것 같습니다.
php5라면 pdo 추천합니다.
모든 sql 명령어 바뀌지 않은 상태에서 다양한 디비로 쉽께 바꿀수있습니다.
없으면 패치확장하구요 현재 위 방식 보니 php4 혹은 php5 최신 버전 아닌것 같습니다.
php5라면 pdo 추천합니다.
모든 sql 명령어 바뀌지 않은 상태에서 다양한 디비로 쉽께 바꿀수있습니다.
답변 감사합니다.
mssql 확장 확인했습니다.
실 디비에서 데이타를 가져오는것도 처리했구요... 프로시저쪽 접근하는게 에러가 나는상황입니다.
pdo쪽은 안해봤는데 찾아봐야겠네요
mssql 확장 확인했습니다.
실 디비에서 데이타를 가져오는것도 처리했구요... 프로시저쪽 접근하는게 에러가 나는상황입니다.
pdo쪽은 안해봤는데 찾아봐야겠네요