mssql 프로시저 연결하는데 도움 좀 부탁드립니다. > 자유게시판

자유게시판

mssql 프로시저 연결하는데 도움 좀 부탁드립니다. 정보

mssql 프로시저 연결하는데 도움 좀 부탁드립니다.

본문

즐거운 연휴 편안히들 쉬고 계시는지요 ^^
다름이 아니라 mssql 프로시저 연결을 할려고 하는데 처음 해 보는거라 염치불구하고 선배님들께 도움 좀 부탁드릴려고 합니다.

제가 한건 아래와 같습니다.

1. 로컬에 apmsetup7 (apache, php5, mysql5)를 설치했구요.

2. php.ini 에서 extension=php_mssql.dll (;) 주석은 없애고 접속은 성공했습니다. (접속 후 쿼리를 날려서 mssql 테이블에 입력, 출력까지 되는걸 확인 했습니다)

3. insert 쿼리는 다음과 같이 넣어서 테스트 했습니다.
$in_sql="insert into $dbName (Key1, Key2) values('1', '입력테스트중입니다')";
mssql_query($in_sql) or die(mssql_error());

4. 이렇게 해서 총 6개를 테스트로 입력 해 뒀습니다.

여기서 끝인줄 알았는데 프로시저를 사용해달라고 하는군요 ^^;;
그래서 프로시저라는걸 급히 검색해보고 안되는 실력으로 레프런스를 뒤져서 찾았습니다.
물론 이곳 게시판에도 찾아봤지만 한없이 부족한 제가 이해할만한 글이 없어서 질문 올리는 거니 부디 넓은 아량으로 도움 좀 부탁드립니다 ^^;


아래는 제가 시도한 소스입니다.


<?php
$hostName="111.222.333.444";
$userName="uName"; //mssql id
$password="p1234";//mssql pass
$dbName="test_db";//mssql db


$conn=mssql_connect($hostName,$userName,$password);

if ($conn) {
    mssql_select_db($dbName,$conn);
    $stmt=mssql_init("sp_test",$conn);//프로시저명
   
    mssql_bind($stmt,"@Key1",$Key1,SQLINT2);
    mssql_bind($stmt,"@Key2",$Key2,SQLVARCHAR);
   
    $result=mssql_execute($stmt);
    $arr=mssql_fetch_row($result);

echo"$arr[Key1] / $arr[Key2] / $conn";
   
    mssql_close($conn);
}else{echo"연결실패";}
?>


이렇게 하니 다음과 같은 에러메세지가 나옵니다.

Warning: mssql_execute() [function.mssql-execute]: message: 프로시저 또는 함수 sp_test에 너무 많은 인수가 지정되었습니다. (severity 16) in C:\APM_Setup\htdocs\dd.php on line 17

Warning: mssql_execute() [function.mssql-execute]: stored procedure execution failed in C:\APM_Setup\htdocs\dd.php on line 17

Warning: mssql_fetch_row(): supplied argument is not a valid MS SQL-result resource in C:\APM_Setup\htdocs\dd.php on line 18
/ / Resource id #2



제가 할려고 하는건 테스트로 입력한 6개(총12개의 값) 모두 또는 하나의 로우에 있는 Key1 과 Key2를 출력 테스트 하려고 하고 있습니다.
한없이 부족한 실력이라 어디가 잘못됐는지 조차 못찾고 있네요..
도움 좀 부탁드립니다.
추천
0
  • 복사

댓글 3개

에러내용만으로는 프로시져 입력파라미터 갯수가 틀려서인것같네요.
저도 저런실수를 할까봐 프로시저 생성후에 직집 디미에서 실행해보고 성공한문장을 소스단에 주석으로 넣고있습니다
© SIRSOFT
현재 페이지 제일 처음으로