반응형

Oracle 36

Oracle 테이블을 단일 행으로 제한하는 간단한 제약 조건

Oracle 테이블을 단일 행으로 제한하는 간단한 제약 조건 애플리케이션 구성 테이블을 1행으로 제한하는 간단한 방법을 찾고 있습니다.서브쿼리가 포함된 가상 컬럼이나 위에 구체화된 뷰를 사용하여 이 작업을 수행할 수 있다는 것은 잘 알고 있지만 실제로는 간단한 테이블입니다. 테이블을 만드는 것보다 구현하는 데 더 많은 줄이 필요하지 않은 제약 조건을 원합니다. 제가 생각한 가장 간단한 방법은 ID 필드를 1로 설정하고 ID가 1이어야 하는 체크 제약 사항입니다. 하지만 이로 인해 테이블에 혼란스러운 추가 필드가 추가되므로 UNIQUE_인 체크 제약 사항과 같이 제가 놓치고 있는 명백한 것이 있기를 바랍니다.필드 = MAX(유니크_)FIELD), 허용되지 않습니다.가장 단순한 것은 상수에 대한 고유한 함수..

programing 2023.09.13

ORA-01219: 데이터베이스가 열리지 않음: 고정 테이블/뷰에서만 쿼리가 허용됨

ORA-01219: 데이터베이스가 열리지 않음: 고정 테이블/뷰에서만 쿼리가 허용됨 저는 오라클 11g과 SQL 개발자 툴을 사용하고 있습니다.db에서 행을 검색하려고 하면 다음과 같은 오류 메시지가 나타납니다. - ORA-01219: database not open: queries allowed on fixed tables/views only) sgadef.dbf 파일을 찾았는데 홈디렉토리에 없어졌습니다.누가 내가 작동할 수 있도록 도와줄 수 있습니까?먼저 작업 중인 인스턴스의 상태를 확인합니다(관리자 계정으로 연결해야 할 수도 있음). select status from v$instance; 아마도 당신은 당신을 얻을 것입니다. STATUS ------------ MOUNTED 시스템 계정에서 완료를 ..

programing 2023.09.08

Oracle BLOB 필드에서 파일을 추출하려면 어떻게 해야 합니까?

Oracle BLOB 필드에서 파일을 추출하려면 어떻게 해야 합니까? 저는 BLOB 필드에 저장된 다수의 파일이 있는 데이터베이스를 가지고 있습니다. 원본 파일을 추출하고 저장하려면 어떻게 해야 합니까?doc, pdf, xls 등 다양한 파일 형식이 있습니다.테이블의 확장명은 한 콜에 있고 원본 파일 이름은 다른 콜에 있습니다.파일 이름이 같은 파일도 여러 개 있을 수 있습니다.버전 9i 이상에서는 UTL_FILE 패키지를 사용하여 이 작업을 수행할 수 있습니다. 다음과 같은 것. DECLARE l_file UTL_FILE.FILE_TYPE; l_buffer RAW(32767); l_amount BINARY_INTEGER := 32767; l_pos NUMBER := 1; l_blob BLOB; l_bl..

programing 2023.09.08

SQL 예외: 오라클의 프로토콜 위반

SQL 예외: 오라클의 프로토콜 위반 "프로토콜 위반"을 받고 있습니다.RedHat Linux에서 실행 중인 응용 프로그램이 있습니다.데이터베이스와 애플리케이션은 시스템에 공존합니다. 파일: Oracle 11g R2(11.2.0.3.0) 사용된: JDBC 파일: 12.1.0.1 : 사용자: jdk1.7.0.65 32비트 저는 이 오류가 드라이버 문제로 지적된 많은 포럼을 접했지만 모든 포럼에서 사용된 Oracle 버전이 더 높고 드라이버 버전이 더 오래되었으며 드라이버를 변경하면 문제가 해결되었습니다.하지만 저의 경우 Oracle 버전은 더 낮지만 드라이버 버전은 더 높습니다.그렇다면 이 경우 상위 버전의 드라이버가 문제가 될 수 있습니까? 또한 이 프로토콜 위반은 DB의 최대 연결 수에 도달할 때도 발..

programing 2023.08.29

숫자가 무한대와 동일한 위치 선택

숫자가 무한대와 동일한 위치 선택 SQL에서 열(데이터 유형:number동등한InfinityOracle 10g에서? select * from MYTABLE where MYCOLUMN = Infinity; 출처: 로랑 슈나이더: select * from MYTABLE where MYCOLUMN = binary_double_infinity; 아니면 암시적인 캐스팅으로, 그냥: select * from MYTABLE where cast(MYCOLUMN as binary_double) = binary_double_infinity; 또는 부동 소수점 조건 사용: select * from MYTABLE where cast(MYCOLUMN as binary_double) is infinite; SQL Fiddle을 ..

programing 2023.08.29

동의어가 이미 존재하는 경우 동의어를 만들지 않는지 확인하려면 어떻게 해야 합니까?

동의어가 이미 존재하는 경우 동의어를 만들지 않는지 확인하려면 어떻게 해야 합니까? 저는 동의어를 만들기 위해 Oracle SQL developer 2.1을 사용하고 있습니다. CREATE OR REPLACE SYNONYM "ETKS_PR_RW"."SQ_CLDOS_ATCHMNT_ID" FOR "CLDOS_ONLINE_DBA"."SQ_CLDOS_ATCHMNT_ID"; 이 동의어가 이미 존재하는 경우 동의어를 만들지 않는지 확인하려면 어떻게 해야 합니까?사용 중인 경우replace키워드 동의어가 먼저 존재하는지 확인할 필요가 없습니다.이전 이름의 동의어가 있으면 덮어씁니다. 사용을 경계해야 하는 유일한 이유는replace같은 이름의 동의어가 다를 수 있습니다.데이터베이스가 잘 구성되어 있으면 이런 일이 발생..

programing 2023.08.24

선택적 매개 변수를 사용하여 절차를 만드는 방법은 무엇입니까?

선택적 매개 변수를 사용하여 절차를 만드는 방법은 무엇입니까? 선택적 매개 변수로 프로시저를 만들 수 있습니까?예를 들어, 모든 매개 변수를 합산하는 절차를 생성합니다. add(n1, n2, .... nn) 예를 들어, 11개의 매개변수가 있으며, 1에서 10까지 더하면 마지막 매개변수가 다른 작업을 수행할 수 있습니다.구글 검색을 통해 어레이를 사용하여 이를 수행할 수 있는 것처럼 보이지만, 제가 얻은 결과의 대부분은 plsql이 아닌 다른 프로그래밍 언어에 관한 것이었습니다.이론을 plsql에 적용하면 varray 또는 nested table을 사용해야 하나요?매개 변수를 기본값으로 선언해야 합니다. procedure add (n1 number, n2 number default 0, ... nn nu..

programing 2023.08.09

Mac에서 Oracle Sqlplus 클라이언트 사용

Mac에서 Oracle Sqlplus 클라이언트 사용 Mac(64비트)에 SqlPlus 클라이언트를 설치하려고 합니다.먼저 64비트용으로 sqlplus를 설치했지만 오류가 발생했습니다. "세그먼트 오류: 11" 그 다음 32비트용으로 sqlplus를 설치했지만 .../libsqlplus.dylib: 적합한 이미지를 찾을 수 없습니다. .../libsqlplus.dylib: mach-o, 그러나 잘못된 아키텍처입니다. 저는 많은 튜토리얼을 사용했지만 여전히 이 문제를 해결하지 못했습니다.11gR2 64비트 인스턴트 클라이언트는 10.8.5에서 작동합니다.당신이 연결하는 데이터베이스가 아직 10g이어도 상관없고, 11g 클라이언트를 사용할 수 있습니다.구체적으로 필요한 경우가 아니라면 이전 버전을 여전히 사..

programing 2023.08.09

PL/SQL Developer에서 파이프라인 함수를 디버그하는 방법은 무엇입니까?

PL/SQL Developer에서 파이프라인 함수를 디버그하는 방법은 무엇입니까? Oracle 데이터베이스에 다음과 같은 FN_GET_USERINFO_ROWS라는 파이프라인 함수가 포함된 PL/SQL 패키지가 있습니다. CREATE OR REPLACE PACKAGE PKG_USERINFO AS TYPE TY_USERINFO_RECORD IS RECORD( U_ID VARCHAR2(50), U_NAME VARCHAR2(50), DOB DATE); TYPE TY_USERINFO_TABLE IS TABLE OF TY_USERINFO_RECORD; FUNCTION FN_GET_USERINFO_ROWS(P_USER_ID IN NUMBER) RETURN TY_USERINFO_TABLE PIPELINED; END P..

programing 2023.07.30

Oracle SQL - 테이블에 기본 키 추가

Oracle SQL - 테이블에 기본 키 추가 기본 키가 없는 열이 몇 개 있는데 기본 키 열을 추가하려고 합니다. NAME Age ------------- Peter 45 Bob 25 John 56 Peter 45 일부 수집가들은 시퀀스와 트리거가 있는 PK를 추가할 것을 제안합니다.Oracle의 기존 테이블에 자동 증분 기본 키 추가 이것은 좋지만, 고객은 시퀀스나 트리거를 추가할 권한이 없는 데이터베이스 사용자를 사용합니다.사용자 권한을 변경하거나 스크립트를 실행하기 위해 수십 명의 DBA 관리자에게 연락하는 것을 방지하고 싶습니다. 이것은 업데이트 문만 포함된 PK를 추가하는 것에 대한 저의 제안입니다. (2단계에서 도움이 필요합니다.) 1단계: ID 열을 만듭니다(이에 대한 DB 권한이 있습니다..

programing 2023.07.30
반응형