우선, 제 영어는 유감입니다.NHibernate에서 Oracle PL/SQL 저장 프로 시저를 실행하십시오.
모든 DML이 저장 프로 시저 (예 : 클라이언트가 "INSERT ONTO Articles (...")를 직접 실행할 수 없으면 대신 SP "ArticleInsert()"를 호출해야 함) 또한 데이터베이스는 "사용자", "권한", "사용자 _ 권한"과 같은 특수 테이블을 자체 보안 시스템으로 가지고 있습니다. 데이터베이스에 연결할 때 "시스템에 로그인"하기 위해 특수 저장 프로 시저를 실행해야합니다. (예 : "Login (database_user, user_password)")이 데이터베이스를 "알았"때, 나는 누구이며, 내 특권을 알고있다
NHibernate를 사용하여 C# 수정은 풀에서 새 데이터베이스 연결을 사용합니다. 그래서 쓸 때 cl ("INSERT/UPDATE/DELETE"는 저장 프로 시저의 실행으로 대체 될 것입니다.) NHibernate가 새로운 DB 연결을 호출 할 때 "Login (database_user, user_password)"를 어떻게 실행할 수 있습니까? 풀?
그런 작업이 어떻게 해결됩니까?
덕분에
엄격한 Oracle DBA가 애플리케이션을 저장하는 횟수가 거의 안되는 경우 삽입/업데이트/삭제를위한 자신의 포인트가 있다고 생각합니다. 선택 사항에 대해 NH과 함께 할 것을 전적으로 동의합니다.) –
물론 SELECT 조작은 SP가 아닌 표준 NHibernate 메소드를 사용하여 실행됩니다. 저장 프로시 저는 CREATE/UPDATE/DELETE에만 해당됩니다. – JSP