FireBird Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
파이어버드 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
IBPhoenix
FireBird Main site
볼랜드포럼 광고 모집

FireBird Q&A
[4485] VB.NET 에서 Reader 로 RETURNING 하는방법 문의
델맨 [delphiman] 1892 읽음    2012-08-26 13:24
'-----------------------------------------------
        dim pkey as integer
        dim cname as string
        qryStr = ""
        qryStr = qryStr & " UPDATE OR insert into                                                                   " & vbCrLf
        qryStr = qryStr & " INFO_CLIENT  ( PKEY_CLIENT, CLIENT_NAME , CLIENT_TEL  )        " & vbCrLf
        qryStr = qryStr & " values            ( 123             , 'TEST'            , '010-1234-1234' )   " & vbCrLf
        qryStr = qryStr & " MATCHING( PKEY_CLIENT )                                                            " & vbCrLf
      '  qryStr = qryStr & " RETURNING PKEY_CLIENT, CLIENT_NAME;                                     " & vbCrLf   <--- 항상 0 이 나옴
        qryStr = qryStr & " RETURNING PKEY_CLIENT;                                                             " & vbCrLf   <---- 동작함.

        If Not clsDb.fbReader.IsClosed Then clsDb.fbReader.Close()
        clsDb.fbCmd.CommandText = qryStr
        clsDb.fbCmd.CommandType = CommandType.Text
        clsDb.fbCmd.Connection = clsDb.fbCon

        Try
               'ExecuteScalar   로 작업하면 리턴값 받아옴
            pkey = clsDb.fbCmd.ExecuteScalar   <--- 정상 동작함. 리턴값 1개 받아옴.

               'ExecuteReader 로 작업하면 데이타가 없다고 함.
            clsDb.fbReader = clsDb.fbCmd.ExecuteReader <---- 정상 동작함. (db에 쿼리 적용은 됨)
            clsDb.fbReader.Read() <---- "There are no data to read" 에러 발생 - 값이 없다고 나옴.

        Catch ex As Exception
            MessageBox.Show(ex.Message)
        End Try
'-----------------------------------------------

VB.NET 2010 , FB 2.5 , DOT.NETProvider-2.7.7-NET35 버전으로 작업중입니다.

ExecuteScalar 로 작업하면 RETURNING 구문이 동작합니다.
결과 값을 한개만 받을수 있음.

그런데 DataReader로  반환값을 받으려면 계속 "There are no data to read" 가 납니다.
여러값을 동시에 받을수가 없네요...    어떻게 해야 하나요?

감사합니다.

+ -

관련 글 리스트
4485 VB.NET 에서 Reader 로 RETURNING 하는방법 문의 델맨 1892 2012/08/26
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.