Oracle 데이터베이스에 대한 읽기 권한이 부여되어 자체 데이터베이스에 대한 데이터를 가져 왔습니다. DBA는 나에게 내가 필요한 모든 것을 보증하는 스토어드 프로 시저를 주었지만 루비에서 아직 실행할 수 없었다.Ruby에서 Oracle 저장 프로 시저를 실행하는 방법
나는 ruby-oci8 보석과 oracle 인스턴트 클라이언트를 설치했다.
여기까지 내가 지금까지 관리 해왔다.
여기는 내가 붙어 있습니다. 나는이 OCI8 :: Cursor 객체를 가지고 있지만 어떻게 처리해야할지 모른다. 그것은 내게 결과의 전체를 반환해야합니다 (null 값은 쿼리에 있음)하지만 나는 아무것도 얻지 못합니다. 매개 변수를 사용하거나 사용하지 않고 cursor.exec를 실행하면 (필자는 어떤 매개 변수가 필요한지 잘 모르겠습니다) 오류가 발생합니다.
cursor.exec이
이OCIError: ORA-06553: PLS-:
ORA-06553: PLS-:
ORA-06553: PLS-:
ORA-06553: PLS-306: wrong number or typ
ORA-06553: PLS-306: wrong number or type of arguments in call to 'GET_PMI_ADT'
ORA-06553: PLS-306: wrong number or type of arguments in call to 'GET_PMI_ADT'
ORA-06553: PLS-306: wrong number or type of arguments in call to 'GET_PMI_ADT'
ORA-06553: PLS-306: wrong number or type of arguments in call to 'GET_PMI_ADT'
ORA-06553: PLS-306: wrong number or type of arguments in call to 'GET_PMI_ADT'
ORA-06553: PLS-306: wrong number or type of arguments in call to 'GET_PMI_ADT'
ORA-06553: PLS-306: wrong number or type of arguments in call to 'GET_PMI_ADT'
등 ...
cursor.fetch이
OCIError: ORA-24338: statement handle not executed
사람이 여기에 어떤 아이디어가 있습니까
를 제공 준다? 나는 내 머리를 잘 넘었다.아직보고있는 모든 사용자를위한 업데이트입니다. 저장 프로 시저를
BEGIN REPOSITORY.GET_PMI_ADT('722833', 'W', null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null); END;
으로 변경하면 이제 오류가 발생합니다.
OCIERROR: ORA-06550: line 1, column 45:
PLS-00363: expression ' NULL' cannot be used as an assignment target
저장 프로 시저가 잘못 되었습니까? 그것을 바로 잡기 위해 명백한 것이 있습니까?
죄송에, 나는 그것을 포함해야했다. 위에 추가되었습니다. – brad
Oracle에서 정확한 코드 줄을 실행 해 보셨습니까? 당신이 호출하려고하는 저장 프로 시저에 문제가있는 것 같습니다. – Strelok
Oracle DB에 대한 액세스 권한이 없으며 DBA가 자신의 저장 프로 시저에 문제가있을 수 없다고 확신 했으므로 ..... 의심 스럽습니다. – brad