Oracle 82

View 작성 시 Oracle 오류 - ORA-01720

View 작성 시 Oracle 오류 - ORA-01720 Oracle 11.2.0.4.0 환경에서 문제가 발생하여 어려움을 겪고 있습니다.데이터를 선택할 수 있는 작동 중인 COMPLED 뷰가 존재하지만 "ORA-01720" 오류가 발생하지 않으면 변경할 수 없습니다. 내 설정에 대한 정보:저는 간단하게 "A"와 "B" 두 개의 스키마를 가지고 있습니다.스키마 "A"는 "TABLE1", "TABLE2", "TABLE3"을 소유하고 있으며 스키마 "B"는 현재 3개의 테이블에서 데이터를 선택하는 데 필요한 권한을 가지고 있습니다.저는 조회를 통해 데이터를 선택할 수 있고, 존재하는 뷰도 선택할 수 있음을 확인했습니다. 스키마 "B"가 세 개의 테이블 내에서 스키마 "A" 데이터에 대한 액세스를 허용했을 때..

programing 2023.10.29

웨이포인트를 저장하고 비교를 수행하는 가장 효율적인 방법은 무엇입니까?

웨이포인트를 저장하고 비교를 수행하는 가장 효율적인 방법은 무엇입니까? 당신의 의견을 알고 싶습니다.저는 사용자가 경로를 만들고 이 경로를 추적하여 데이터베이스에 모든 경유지를 저장하는 응용프로그램을 만들었습니다.그런 다음, 응용 프로그램은 사용자 웨이포인트를 비교합니다. 현재 저는 a를 사용하고 있습니다.MSSQL두 개의 테이블을 사용하는 서버, 하나는 경로에 사용하고 다른 하나는 경유지(공간 데이터 유형)를 저장합니다.비교는 st_distance...와 같은 SQL Server 지리 함수를 사용하여 저장 프로시저에서 수행됩니다. 다른 옵션들도 조사해 봤습니다.제가 구현한 것 중 하나는 객체를 이용한 오라클 11g입니다.모든 데이터를 하나의 Object Table에만 저장하고 Way Point는 Lat..

programing 2023.10.29

EF + ODP.NET + CLOB = 값은 Null일 수 없습니다 - 매개 변수 이름: byteArray?

EF + ODP.NET + CLOB = 값은 Null일 수 없습니다 - 매개 변수 이름: byteArray? 우리 프로젝트는 최근에 새로운 Oracle로 업데이트되었습니다.ManagedDataAccess DLLs(v 4.121.2.0) 및 이 오류가 간헐적으로 발생하고 있습니다.우리는 그것을 고치기 위해 무엇을 했는지 제대로 알지 못한 채 몇 번 고쳤습니다. CLOB 필드가 엔티티 프레임워크의 문자열에 매핑된 다음 제한된 속성 집합이 아닌 전체 엔티티를 끌어오는 LINQ 문에서 선택되어 발생하는 것이라고 확신합니다. 오류: Value cannot be null. Parameter name: byteArray 추적 쌓기: at System.BitConverter.ToString(Byte[] value, I..

programing 2023.10.24

부모가 소유한 루트의 백분율 계산

부모가 소유한 루트의 백분율 계산 간단히 말하면, 저는 부모가 소유한 나무의 뿌리, 더 위에 있는 나무의 비율을 계산하려고 합니다.SQL 단독으로 어떻게 해야 합니까? 여기 제 (샘플) 스키마가 있습니다.계층 구조 자체는 매우 간단하지만, 추가적으로holding_id, 즉, 한 부모가 자녀의 여러 부분을 "소유"할 수 있다는 뜻입니다. create table hierarchy_test ( id number -- "root" ID , parent_id number -- Parent of ID , holding_id number -- The ID can be split into multiple parts , percent_owned number (3, 2) , primary key (id, parent_id..

programing 2023.10.19

회계연도로 날짜 잘라내기

회계연도로 날짜 잘라내기 다음 데이터베이스 보기에서는 날짜를 회계 연도(4월 1일)로 잘라냅니다. CREATE OR REPLACE VIEW FISCAL_YEAR_VW AS SELECT CASE WHEN to_number(to_char(SYSDATE, 'MM')) < 4 THEN to_date('1-APR-'||to_char(add_months(SYSDATE, -12), 'YYYY'), 'dd-MON-yyyy') ELSE to_date('1-APR-'||to_char(SYSDATE, 'YYYY'), 'dd-MON-yyyy') END AS fiscal_year FROM dual; 이를 통해 오늘 날짜를 기준으로 현재 회계연도를 계산할 수 있습니다. 이 계산을 어떻게 단순화하거나 최적화할 수 있습니까?ADD_..

programing 2023.10.19

가능한 중복된 날짜의 총 길이를 찾기 위해 Oracle 쿼리를 작성하는 방법

가능한 중복된 날짜의 총 길이를 찾기 위해 Oracle 쿼리를 작성하는 방법 다음 작업에 대한 쿼리를 찾는 데 어려움을 겪고 있습니다. 나는 다음의 데이터를 가지고 있고 각 고유 ID에 대한 총 네트워크 일을 찾고 싶습니다. ID From To NetworkDay 1 03-Sep-12 07-Sep-12 5 1 03-Sep-12 04-Sep-12 2 1 05-Sep-12 06-Sep-12 2 1 06-Sep-12 12-Sep-12 5 1 31-Aug-12 04-Sep-12 3 2 04-Sep-12 06-Sep-12 3 2 11-Sep-12 13-Sep-12 3 2 05-Sep-12 08-Sep-12 3 문제는 날짜 범위가 겹칠 수 있고 다음과 같은 결과를 줄 SQL을 생각해 낼 수 없다는 것입니다. ID ..

programing 2023.10.14

제약 조건이 존재하는지 확인하는 SQL for Oracle

제약 조건이 존재하는지 확인하는 SQL for Oracle SQL Server에서 아래 SQL을 사용하여 제약 조건이 존재하는지, 기본 키, 트리거 등을 확인할 수 있습니다. SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[SCHEMA].[TABLENAME]') AND OBJECTPROPERTY(id, N'IsPrimaryKey') = 1 제 쿼리는 SQL Server 특정 테이블을 사용하여 답을 찾기 때문에 Oracle과 동등한 기능은 무엇입니까?SELECT * FROM USER_CONSTRAINTS WHERE CONSTRAINT_NAME = 'CONSTR_NAME'; 그CONSTRAINT_TYPE어떤 종류의 제약인지 알려줄 것입니다 R - 기준키(외국키)..

programing 2023.10.14

Oracle에서 SQL 행을 쉼표로 구분된 값으로 변환

Oracle에서 SQL 행을 쉼표로 구분된 값으로 변환 이 질문에는 이미 다음과 같은 답변이 있습니다. 닫힘11년 전에. 중복 가능: Oracle에서 여러 행을 쉼표로 구분된 목록에 결합하려면 어떻게 해야 합니까? 함수를 만들지 않고 SQL의 반환 행 목록에서 쉼표로 구분된 값을 생성하려면 어떻게 해야 합니까?중복 및 null을 제거하거나 '없음'을 값으로 지정해야 합니다. 예:select name from student; 결과: NAME ------ Zed Charlo None Charlo Dionn Ansay 원하는 출력: Name ------- Zed,Charlo,Dionn,Ansay http://sqlfiddle.com/ #!4/9ad65/2 select listagg(name, ',') with..

programing 2023.10.09

Oracle : 다른 스키마에 테이블 생성을 허용하시겠습니까?

Oracle : 다른 스키마에 테이블 생성을 허용하시겠습니까? Schema1과 Schema2 두 사용자가 있습니다. Schema1에 Create Table On Schema2 권한을 부여하는 방법? 계속 뒤돌아서서 헷갈렸어요.시도했습니다. Schema2에서 해봤는데요. GRANT CREATE TABLE TO SCHEMA1 WITH ADMIN OPTION; 그러나 이것은 Schema2가 아닌 자체 Schema1에 Creating table을 부여하는 것 같습니다. 좋은 생각 있으세요? 감사해요.DBA 사용자가 아닌 사용자가 다른 스키마에서 테이블을 생성할 수 있도록 허용하는 유일한 다른 방법을 제공하는 것입니다.CREATE ANY TABLE시스템 권한. 이 권한은 다음 권한에만 부여할 수 있습니다.SCHE..

programing 2023.10.09

Oracle Server에서 문자열의 첫 번째 문자 제거

Oracle Server에서 문자열의 첫 번째 문자 제거 있습니다Table1.column1다음과 같은 텍스트가 있는 Oracle Server에서12345678910. 문자열의 처음 6자를 제거하려면 어떻게 해야 합니까?결과는 다음과 같습니다.78910.SELECT SUBSTR( column1, 7, LENGTH( column1 ) - 6 ) FROM Table1; 또는 보다 간단하게 다음을 수행할 수 있습니다. SELECT SUBSTR( column1, 7 ) FROM Table1; 문자열의 마지막 5자를 원하는 경우 두 번째 인수에 음의 값을 사용할 수 있습니다.SUBSTR, 다음과 같이: select substr('12345678910', -5) from dual; 생산하는'78910'. 행운을 빌어..

programing 2023.10.09