이전 레거시 프로세스를 실행하기 위해 보존되는 오래된 상자에 이전 Oracle 저장 프로 시저를 일부 변경해야합니다. 데이터베이스에 연결할 수있는 유일한 도구는 SQL Plus입니다. SQL에서 편집을 위해 저장된 프로 시저를 메모리에로드하려면 Plus?저장 프로 시저를 열고 SQL * Plus에서 편집하는 방법
내가 온라인에서 찾은 튜토리얼은 어떻게 완료되었는지 exlain하지 않습니다. :-(
이전 레거시 프로세스를 실행하기 위해 보존되는 오래된 상자에 이전 Oracle 저장 프로 시저를 일부 변경해야합니다. 데이터베이스에 연결할 수있는 유일한 도구는 SQL Plus입니다. SQL에서 편집을 위해 저장된 프로 시저를 메모리에로드하려면 Plus?저장 프로 시저를 열고 SQL * Plus에서 편집하는 방법
내가 온라인에서 찾은 튜토리얼은 어떻게 완료되었는지 exlain하지 않습니다. :-(
상자는 거의 모든 dev 도구 모음을 지우는 TNS 리스너가없는 HPUX입니다. 그러나 DBA는 OEM이라는 관리 도구를 사용하여 연결할 수 있었으며 필요한 변경 작업을 수행 할 수있었습니다. 제안 해 주셔서 감사합니다.
에게
이전 제안, 난 그냥 오라클 SQL 개발자 링크를 제안하고 그것을 위해 복숭아 잘 작동 밖으로 시도하는 것이 스크래치 두꺼비의 시험 버전을 다운로드 훨씬 쉽게 될 것이다 편집 발동 SQLPLUS에 대한
당신에게 저장된 프로 시저의 내용을 표시하고, (DCookie의 :-)에 의해 제안) 파일에 스풀링하는 거의 필요 :.
을 0sqlplus> spool myprocname.sql;
sqlplus> select text from all_source where name = 'MYPROCNAME' and type = 'PROCEDURE' order by line;
sqlplus> quit;
그런 다음 적절한 SQL 편집기에서 로컬 SQL 파일을 편집하십시오.
그런 다음 SQLPlus을 사용하여 테스트 용 proc을 다시 빌드하기 위해 SQL 파일을 실행하십시오.
>sqlplus username/[email protected] @myproc.sql
요컨대
+1,하지만 당신은 파일에 출력을 스풀 적어도 – DCookie
좋은 지적 :-) 잘라 내기/붙여 넣기 고통을 피할 수있다, 나는 그것을했다. :-) –
Oracle SQL Developer을 다운로드하여 설치할 수 있습니까? 그것은 무료입니다. 당신은 SQL의 *를 사용하여 DB에 연결할 수 있습니다 게다가, 당신은 SQL의 IDE를 사용하여 연결할 수 있어야합니다 경우 UNIX 용
는 TOra (오픈 소스)
있다. 즉, SQL * Plus에서 편집을 위해 proc을 열 수는 없지만 컴파일 할 수는 있습니다. 업데이트 된 proc을 명령 프롬프트에 복사하고 (필요한 경우 줄 단위로) 컴파일 할 수 있습니다.
현재 소스에 수동으로 액세스해야하는 경우 USER_SOURCE 테이블을 쿼리 할 수 있습니다.
그러나 IDE를 사용하여 DB에 연결하는 것이 좋습니다.
코드를 검색하는 데 dbms_metadata.get_ddl
함수를 사용할 수 있습니다. 코드를 검색하는 것이 훨씬 낫습니다.
spool /tmp/my_proc.txt
set long 100000
select dbms_metadata.get_ddl('PROCEDURE','NAME','OWNER') from dual;
spool off
내 자동 가정은 사람들이 Windows를 자유롭게 사용할 수 있다는 것입니다. – DCookie