왜 사용자 정의 함수를 호출하면 저장 프로 시저를 호출 할 때 소유자 이름이 필요합니까? 도와주세요!저장 프로 시저를 호출 할 때 사용자 정의 함수를 호출 할 때 소유자 이름이 필요한 이유는 무엇입니까?
답변
나는 스키마 이름을 의미한다고 생각 하는가? 소유자는 그것을 만든 사용자입니다.
이 함수는 내장 함수와 구별됩니다. 내장형 함수 (예 : DATEADD
등)는 데이터베이스 엔진 자체에있는 반면, "시스템"저장 프로 시저 및 함수는 마스터 데이터베이스에 있으므로 검색 할 수 있습니다.
SELECT MyFunction()
을 지정하면 데이터베이스 엔진이나 내장 된 함수에 관계없이 데이터베이스 엔진이 작동하기가 더 어려울 것으로 생각됩니다.
사실 이것은 스칼라 값 함수의 경우에만 해당됩니다.
네, 맞아요 이안. 나는 방금 테스트하고 당신이 말한 것을 확인했습니다! 그래서 이것으로부터, "시스템 테이블 - 값 함수는 없다"고 말할 수 있을까요? –
위의 Andy와 논의한 후 여기 내 자신의 질문에 대답합니다. 저장 프로 시저가 생성되면 연결의 현재 데이터베이스에 저장됩니다. 그 동안 함수는 데이터베이스 엔진 (스칼라 값 기본 제공)과 연결의 현재 데이터베이스 (사용자 정의 함수)의 두 위치에 저장됩니다. 그래서 사용자 정의 스칼라 값 함수를 호출 할 때 스키마 이름 접두어와 기본 스키마를 구별 할 필요가 있습니다. 다른 유형의 함수와 저장 프로 시저에이 접두어가 필요하지 않습니다.
- 1. 저장 프로 시저를 호출
- 2. Mysql 저장 프로 시저를 호출 할 때 오류가 발생했습니다.
- 3. 저장 프로 시저를 호출 할 때 오류를 지우는 방법?
- 4. 저장 프로 시저를 호출 할 때 테이블을 삽입 할 때 잠글 때
- 5. div 함수를 호출 할 때 함수 호출
- 6. 사용자 정의 함수를 만드는 저장 프로 시저를 만드는 것이 좋습니다 ...?
- 7. Java에서이 함수를 호출 할 수없는 이유는 무엇입니까?
- 8. 보기에서 저장 프로 시저를 호출 할 수 있습니까?
- 9. 최대 절전 기준으로 저장 프로 시저를 호출 할 수 있습니까?
- 10. 저장 프로 시저를 실행할 때 함수를 매개 변수로 사용 하시겠습니까?
- 11. 함수를 호출 할 때 문제가 발생했습니다.
- 12. EXC_BAD_ACCESS malloc 함수를 호출 할 때
- 13. C에서 호출 할 때 저장 프로 시저가 테이블을 업데이트하지 않음
- 14. Rails를 통해 저장 프로 시저를 호출 하시겠습니까?
- 15. 저장 프로 시저를 통한 사용자 정의 함수의 장점
- 16. AS3_Release를 호출 할 때
- 17. PHP mysql 저장 프로 시저를 호출
- 18. 멤버를 반복하고 함수를 호출하여 함수를 호출 할 때 함수를 호출합니다.
- 19. 저장 프로 시저에서 트리거 함수를 호출 할 수 있습니까?
- 20. 저장 프로 시저를 호출 할 때 구문 오류가 발생합니다. 문제가 무엇인지 알 수 없습니다.
- 21. Entity Framework 저장 프로 시저를 호출 할 때 SQL 문 참조
- 22. 저장 프로 시저를 호출 할 때 .NET READPAST 잠금 오류가 발생했습니다.
- 23. ExecuteScalar는 1을 반환하는 저장 프로 시저를 호출 할 때 NullReferenceException을 throw합니다.
- 24. SQL 문 내에서 프로 시저를 호출 할 수 있습니까?
- 25. 파이썬 : cron에서 호출 할 때 바벨로부터 예외가 발생하는 이유는 무엇입니까?
- 26. Java NullPointerException 사용자 정의 클래스에서 메소드를 호출 할 때
- 27. SqlCommand.Dispose를 호출 할 때 처리되는 것은 무엇입니까?
- 28. 자바 스크립트 함수를 호출 할 때 gwt 함수를 호출하는 방법
- 29. 루비에서 전역 변수를 정의 할 때 프로 시저를 호출하려면 어떻게해야합니까?
- 30. 저장 프로 시저를 호출 한 후 PHP에서 LAST_INSERT_ID()를 액세스합니다.
감사합니다. Andy! 예 스키마 이름을 의미합니다. 당신이 말한 것은 도움이되지만 전적으로 당신에게 동의하지 않습니다. 왜 우리는 사용자의 저장 프로 시저와 내장 저장 프로 시저를 구별 할 필요가 없습니까? –
저장 프로 시저는 데이터베이스에만 저장되므로 내장되어 있지 않으므로 엔진이 master 데이터베이스와 현재 데이터베이스를 모두 검색 할 수 있습니다. 그래서 sp_something 프로 시저의 이름을 지정하지 않아야합니다. 프로 시저 시작시 SQL이 sp_를 보면 master 데이터베이스를 먼저 검색합니다. –
감사합니다. Andy. 나는 그것을 지금 이해한다. 이안이 말했듯이 우리는 스칼라 함수에 대한 스키마 만 필요합니다. 테이블 - 값 함수의 경우에는 필요하지 않습니다. 이 앤디에 대해 생각해보고 싶습니다. 나와상의하십시오. –