oracle 53

Spring Batch ORA-08177: 단일 작업을 실행할 때 이 트랜잭션에 대한 액세스를 직렬화할 수 없습니다, 직렬화된 분리 수준

Spring Batch ORA-08177: 단일 작업을 실행할 때 이 트랜잭션에 대한 액세스를 직렬화할 수 없습니다, 직렬화된 분리 수준 Spring Batch의 Job Repository에서 SERIALIZED 격리 수준과 함께 다음 예외가 발생했습니다. org.springframework.dao.CannotSerializeTransactionException: PreparedStatementCallback; SQL [INSERT into DATAFEED_APP.BATCH_JOB_INSTANCE(JOB_INSTANCE_ID, JOB_NAME, JOB_KEY, VERSION) values (?, ?, ?, ?)]; ORA-08177: can't serialize access for this transac..

programing 2023.06.08

Oracle에서 SQL 실행 계획을 보려면 어떻게 해야 합니까?

Oracle에서 SQL 실행 계획을 보려면 어떻게 해야 합니까? 저는 지금 데이터베이스 인덱스에 대해 배우고 있으며, 데이터베이스 인덱스를 사용하는 효율성을 이해하려고 노력하고 있습니다. 특정 쿼리가 인덱스를 사용하는지 확인하고 싶습니다. 실제로 인덱스를 사용하여 쿼리를 실행하는 것과 인덱스를 사용하지 않고 실행하는 것의 차이를 확인하고 싶습니다. 저는 sql+를 사용하고 있습니다. 실행 계획을 보려면 어떻게 해야 하며 인덱스가 사용되었는지 여부를 알려주는 정보는 어디에서 찾을 수 있습니까?이 코드를 사용하여 먼저 설명한 후 계획을 확인해 보십시오. 계획 설명: explain plan for select * from table_name where ...; 계획 보기: select * from table(..

programing 2023.06.08

스키마에 있는 모든 테이블의 개수를 가져옵니다.

스키마에 있는 모든 테이블의 개수를 가져옵니다. 스키마 내의 모든 테이블의 레코드 카운트를 가져오려고 합니다.PL/SQL을 쓰는 데 문제가 있습니다.지금까지 이렇게 했는데 오류가 나네요.변경 사항을 제안해 주십시오. DECLARE v_owner varchar2(40); v_table_name varchar2(40); cursor get_tables is select distinct table_name,user from user_tables where lower(user) = 'SCHEMA_NAME'; begin open get_tables; fetch get_tables into v_table_name,v_owner; INSERT INTO STATS_TABLE(TABLE_NAME,SCHEMA_NAME,R..

programing 2023.04.04

Oracle의 기본 날짜 형식은 YYY-MM-DD입니다. 이유는 무엇입니까?

Oracle의 기본 날짜 형식은 YYY-MM-DD입니다. 이유는 무엇입니까? Oracle의 기본 날짜 형식은 YYY-MM-DD입니다.그 말은 내가 한다면: select some_date from some_table 데이트에서 시간을 뺏겨요 네, 다음과 같은 방법으로 문제를 해결할 수 있습니다. alter session set nls_date_format='yyyy-mm-dd hh24:mi:ss'; 그런데 왜 위의 내용이 기본값이 아닐까요?특히 DBMS에서는 두 가지 주요 시간 추적 데이터 유형(DATE 및 TIMESTAMP) 모두 최소 1초까지의 정확도를 포함하는 시간 구성요소를 가집니다.Oracle 데이터베이스를 Oracle SQL Developer와 혼동하지 않으시겠습니까? 데이터베이스 자체에는 날짜..

programing 2023.04.04

PLS-00201: 식별자를 선언해야 합니다.

PLS-00201: 식별자를 선언해야 합니다. 다음 테이블을 생성한 PL/SQL 스크립트를 실행했습니다. TABLE_NAME VARCHAR2(30) := 'B2BOWNER.SSC_Page_Map'; 인수를 사용하여 이 테이블에 대한 삽입 함수를 만들었습니다. CREATE OR REPLACE FUNCTION F_SSC_Page_Map_Insert( p_page_id IN B2BOWNER.SSC_Page_Map.Page_ID_NBR%TYPE, p_page_type IN B2BOWNER.SSC_Page_Map.Page_Type%TYPE, p_page_dcpn IN B2BOWNER.SSC_Page_Map.Page_Dcpn%TYPE) 신고해야 한다는 통보를 받았다.B2BOWNER.SSC_Page_Map내 기능에 ..

programing 2023.03.25

Oracle SQL 스키마의 모든 테이블을 나열하려면 어떻게 해야 합니까?

Oracle SQL 스키마의 모든 테이블을 나열하려면 어떻게 해야 합니까? Oracle SQL 스키마의 모든 테이블을 나열하려면 어떻게 해야 합니까?다른 스키마 내의 모든 테이블을 표시하려면 다음 시스템 특권을 하나 이상 가지고 있어야 합니다. SELECT ANY DICTIONARY (SELECT | INSERT | UPDATE | DELETE) ANY TABLE 또는 DBA 역할이라는 큰 망치입니다. 이 중 하나를 사용하여 다음을 선택할 수 있습니다. SELECT DISTINCT OWNER, OBJECT_NAME FROM DBA_OBJECTS WHERE OBJECT_TYPE = 'TABLE' AND OWNER = '[some other schema]' 이러한 시스템 권한이 없으면 직접 또는 역할을 통해..

programing 2023.03.20

Oracle 타임스탬프와 날짜 비교

Oracle 타임스탬프와 날짜 비교 타임스탬프 필드가 있는데 Oracle 쿼리에서 날짜 부분을 비교하려고 합니다. 어떻게 해야 하죠? SELECT * FROM Table1 WHERE date(field1) = '2012-01-01' 날짜 부분을 잘라낼 수 있습니다. select * from table1 where trunc(field1) = to_date('2012-01-01', 'YYYY-MM-DD') 이 접근법의 문제점은 어떤 지표도field1함수 호출로 인해 사용되지 않습니다. 다른 방법(및 인덱스 친화적) select * from table1 where field1 >= to_timestamp('2012-01-01', 'YYYY-MM-DD') and field1 < to_timestamp('201..

programing 2023.03.15

Linux에서 SQL * PLUS 클라이언트를 설치하는 방법

Linux에서 SQL * PLUS 클라이언트를 설치하는 방법 저는 AWS 서비스를 하고 있습니다.나는 가지고 있다.ec2 ( centos )사례.이 Centos 머신에 SQL*Plus Client를 설정해야 합니다. 연결할 서버가 원격 영역에 있습니다.서버 버전은oracle-se(11.2.0.2) Cent에 클라이언트를 설치하려면 어떻게 해야 합니까?OS 머신?오라클 리눅스 x86-64 인스턴트 클라이언트 다운로드 페이지로 이동 일치하는 클라이언트 다운로드 oracle-instantclient11.2-basic-11.2.0.2.0.x86_64.rpm oracle-instantclient11.2-sqlplus-11.2.0.2.0.x86_64.rpm 설치하다 rpm -ivh oracle-instantclie..

programing 2023.03.15

Oracle에서 PL/SQL 출력을 플러시하는 방법이 있습니까?

Oracle에서 PL/SQL 출력을 플러시하는 방법이 있습니까? 셸 스크립트 내에서 호출되는 SQL 스크립트가 있어 실행하는 데 시간이 오래 걸립니다.현재 다음을 포함합니다.dbms_output.put_line여러 가지 점에서 진술합니다.이러한 인쇄문의 출력은 로그 파일에 표시됩니다.단, 스크립트가 완료된 후에만 표시됩니다. 스크립트가 실행 중일 때 로그 파일에 출력이 표시되도록 하는 방법이 있습니까?사실 그렇지 않아요.DBMS_OUTPUT의 동작 방법은 다음과 같습니다.PL/SQL 블록은 클라이언트와의 상호 작용 없이 데이터베이스 서버에서 실행됩니다.그래서 PUT에 전화하면...LINE, 이 텍스트는 서버상의 메모리에 있는 버퍼에 격납되어 있습니다.PL/SQL 블록이 완료되면 제어가 클라이언트에 반환됩..

programing 2023.03.10

ORA-12638: 자격 증명 취득 실패

ORA-12638: 자격 증명 취득 실패 상속받은 레거시 VB6 애플리케이션이 있습니다.내가 직면하고 있는 문제는 악명 높은 사람들이 ORA-12638: Credential retrieval failed 에러 메세지가 표시됩니다.그러나 SQLPlus와 Toad에서는 정상적으로 연결할 수 있습니다.구글을 검색해보니 다들 sqlnet.ora 파일을 수정해서 SQLNET.AUTHENTICATION_SERVICES=(NONE) 성공했어.다른 해결책을 찾을 수 있는 사람을 아직 찾지 못했어요.접속 문자열은 다음과 같습니다. "PROVIDER=OraOLEDB.Oracle;DATA SOURCE=(DESCRIPTION = " & _ "(ADDRESS = (PROTOCOL = TCP)(HOST = server1) (PO..

programing 2023.03.05