2016-07-06 2 views
0

데이터베이스의 코드를 정리하는 PLSQL 프로 시저를 작성하라는 요청을 받았습니다. 코드는 varchar2이며 00000001과 유사합니다. 응용 프로그램의 모든 곳에서 사용됩니다. 저의 새로운 고용주는 00000001과 같이 코드를보다 쉽게 ​​읽을 수있게하고, 어디에서나 사용할 수 있도록하기를 원합니다.PLSQL 전체 데이터베이스에서 데이터를 변경하는 절차

제 질문은 어떻게 그 문제를 해결할 수 있습니까? 나는 명확히 해달라고 요청했다. 그리고 그것은 아직도 명백하지 않다. 그리고 어리석은 보는 것에 대한 두려움 때문에 나는 다시 묻지 않을 것이다. 모든 안내는 환영받을 것입니다.

+0

안녕하세요! 당신은 테이블에 정의 된 조회/구성 값에 대해 이야기하고 있습니까? 테이블에서 값 "0000001"을 1로 변경하고 있습니까? –

+0

@ Sankar Krishnamoorthy, 미안, 당신의 의견에 대해 아무런 통지도받지 못했다. 내가 조회 값에 대해 말하고 있다고 생각합니다. 값은 시스템이 사용하는 하드웨어의 일부를 참조하며, 여기 저기에있는 조인 및 다른 프로 시저에 사용됩니다 – gaz07

+0

여기에 샘플 코드를 붙여 넣을 수 있습니까? 00000001 같은 이 테이블의 열에 있거나 패키지, 프로 시저 코드에 하드 코딩되어 있습니다. –

답변

0

나는 그것이 아주 나쁜 생각처럼 들린다는 말로 시작하겠습니다 !!!!

당신은 당신의 기본 프로세스와 동적 SQL을 사용해야합니다 것처럼 소리가 지속될 경우 ...

  • 쿼리 all_tab_cols하는 메신저가이 코드를 사용하는 모든 열을 희망 (열 목록을 얻을 수 있습니다 당신의 값이 해당 테이블
  • 에서
  • 업데이트 값이있는 경우 명명 표준 .. 즉 xxx_CD) 탭/COLS 이상
  • 루프는 ...
  • 이익을 볼 수?

그러나 그때 당신은 현실에 갇히게됩니다. 코드가 외래 키에 있으면 그냥 업데이트 할 수 없습니다. 새 부모 레코드를 만들어야합니다. 모든 자식을 새 부모로 업데이트 한 다음 이전 부모를 삭제합니다.

당신이 성취하고자하는 것을 아주 분명히해야합니다. 더 중요한 것은 거기에 어떤 가치가 있습니까?

프로젝트의 크기를 범위 지정하는 단일 코드 값으로 시작하는 것이 좋습니다. 코드 값 1에 대해 필요한 update을 수동으로 작성한 다음 자동화를 시작하십시오.