oracle 68

Oracle에서 인덱스를 확인하는 방법

Oracle에서 인덱스를 확인하는 방법 Oracle 데이터베이스에 의존하는 제품의 스키마 업그레이드 스크립트를 작성하고 있습니다.한 영역에서 테이블에 인덱스를 작성해야 합니다(인덱스가 아직 존재하지 않는 경우).오라클 스크립트에서 이름을 알고 있는 인덱스가 있는지 쉽게 확인할 수 있는 방법이 있습니까? SQL Server의 경우와 유사합니다. 존재하지 않는 경우(SELECT * FROM SYSINDES WHERE NAME = 'myIndex') // 그런 다음 myIndex를 만듭니다.user_incount()에서 count()를 선택합니다. 여기서 index_name = 'myIndex' 그러나 sqlplus는...의 경우 지원하지 않으므로 익명 PL/SQL 블록을 사용해야 합니다. 즉, DDL을 수행..

programing 2023.06.29

오라클. 날짜와 시간을 어떻게 출력합니까?

오라클. 날짜와 시간을 어떻게 출력합니까? 내 방문 표는 다음과 같습니다. insert into Visit values(12, to_date('19-JUN-13', 'dd-mon-yy'), to_date('19-JUN-13 12:00 A.M.' , 'dd-mon-yy hh:mi A.M.')); insert into Visit values(15, to_date('20-JUN-13', 'dd-mon-yy'), to_date('20-JUN-13 02:00 A.M.' , 'dd-mon-yy hh:mi A.M.')); insert into Visit values(18, to_date('21-JUN-13', 'dd-mon-yy'), to_date('21-JUN-13 10:30 A.M.' , 'dd-mon-yy hh..

programing 2023.06.29

Oracle의 ALL_TAB_COLUMNS 테이블에 있는 BIN$... 테이블은 무엇입니까?

Oracle의 ALL_TAB_COLUMNS 테이블에 있는 BIN$... 테이블은 무엇입니까? 쿼리할 때ALL_TAB_COLUMNSOracle에서 다음과 같은 테이블이 표시됩니다. BIN$frKctA83wMPgQEOSh0Az+A==$0 BIN$frKctA8cwMPgQEOSh0Az+A==$0 BIN$frQ1pdU2TgXgQEOSh0APxA==$0 BIN$frQ1pdVGTgXgQEOSh0APxA==$0 에 해당하는 항목이 없습니다.ALL_TABLES.저것들은 무엇인가요?버전 10g 이후, 삭제된 테이블(일반적으로 삭제된 개체도 포함)은 휴지통에 넣어 쉽게 복원할 수 있습니다.표시된 이름은 휴지통에 있는 테이블입니다. DROP 문에 PURGE 키워드를 추가하여 휴지통을 우회할 수 있습니다. 관리자 안내서 문서에..

programing 2023.06.24

다른 사람이 먼저 제기할 때의 예외가 무슨 효과가 있습니까?

다른 사람이 먼저 제기할 때의 예외가 무슨 효과가 있습니까? 아직 PL/SQL을 처음 접하는 저는 다음과 같은 트리거에 복사하여 붙여넣고 있습니다. CREATE OR REPLACE TRIGGER FOO_TRG1 BEFORE INSERT ON FOO REFERENCING NEW AS NEW OLD AS OLD FOR EACH ROW BEGIN IF :NEW.FOO_ID IS NULL THEN SELECT FOO_SEQ1.NEXTVAL INTO :NEW.FOO_ID FROM DUAL; END IF; EXCEPTION WHEN OTHERS THEN RAISE; END FOO_TRG1; / ALTER TRIGGER FOO_TRG1 ENABLE; 저는 포함된 예외 처리 코드가 전혀 작동하지 않고 단순히 제거될 수..

programing 2023.06.24

C#에서 LIKE를 사용하는 Oracle 바인딩 변수 사용

C#에서 LIKE를 사용하는 Oracle 바인딩 변수 사용 동적 SQL 생성을 중지하고 바인딩 변수의 사용을 장려하기 위한 노력의 일환으로 몇 가지 문제가 발생했습니다. .NET용 Oracle Data Providers를 사용하여 ASP.NET 페이지에서 Oracle 9i 데이터베이스를 쿼리하는 경우 질문은 sql = "SELECT somedata FROM sometable WHERE machine = :machineName "; Oracle 매개 변수를 다음과 같이 정의합니다. OracleParameter parameter = new OracleParameter(); parameter.ParameterName = "machineName"; parameter.OracleDbType = OracleDbTy..

programing 2023.06.24

PLSQL JDBC:마지막 행 ID를 가져오는 방법?

PLSQL JDBC:마지막 행 ID를 가져오는 방법? 이 SQL 서버 스니펫에 해당하는 PLSQL(Oracle)은 무엇입니까? BEGIN TRAN INSERT INTO mytable(content) VALUES ("test") -- assume there's an ID column that is autoincrement SELECT @@IDENTITY COMMIT TRAN C#에서 내 명령을 호출할 수 있습니다.Scalar()를 실행하여 새 행의 ID를 검색합니다. Oracle에서 새 행을 삽입하고 JDBC가 새 ID의 복사본을 가져오도록 하려면 어떻게 해야 합니까? 편집: BalusC는 매우 좋은 출발점을 제공했습니다.어떤 이유에서인지 JDBC는 명명된 매개 변수 바인딩을 좋아하지 않습니다.이렇게 하면..

programing 2023.06.19

CASE 및 COALESCE 단락 평가는 PL/SQL의 시퀀스에서는 작동하지만 SQL에서는 작동하지 않습니다.

CASE 및 COALESCE 단락 평가는 PL/SQL의 시퀀스에서는 작동하지만 SQL에서는 작동하지 않습니다. 설명서에 설명된 단락 평가가 다음에 대해 수행됩니까?CASE그리고.COALESCE()SQL에서 사용할 때 시퀀스에 적용됩니까?이런 일은 일어나지 않는 것 같습니다. 의 Oracle 설명서에는 다음과 같은 내용이 나와 있습니다. Oracle Database는 단락 평가를 사용합니다. 단한경우순에 CASE 표현... 표현...이전 comparison_expr이 expr과 동일한 경우 Oracle은 comparison_expr을 평가하지 않습니다.검색된 CASE 식의 경우 데이터베이스...이전 조건이 참인 경우 조건을 평가하지 않습니다. 마찬가지로 지로가마에 입니다.COALESCE() 설명서에는 다음..

programing 2023.06.19

재귀 하위 쿼리 팩터링을 사용한 주기 감지

재귀 하위 쿼리 팩터링을 사용한 주기 감지 Oracle SQL은 고유한 CONNECT BY 구문을 사용하여 v2 이후 계층 쿼리를 수행할 수 있습니다.그들의 최신 11g 릴리스 2에서, 그들은 recursive with 절이라고도 알려진 재귀 하위 쿼리 팩터링을 추가했습니다.이것이 ANSI 표준이며, 제가 정확히 이해한 바로는 다른 RDBMS 공급업체에서도 이 표준을 구현했습니다. connect-by와 recursive를 비교했을 때 사이클 검출을 사용했을 때 결과 세트가 다르다는 것을 알게 되었습니다.결과에 의한 연결은 저에게 더 직관적이기 때문에 Oracle 구현에 버그가 포함되어 있는지, 아니면 이것이 표준 ANSI 및 예상 동작인지 궁금합니다.따라서 MySQL, DB2, SQL Server 등의 ..

programing 2023.06.19

Oracle이 연산자와 같지 않음

Oracle이 연산자와 같지 않음 연산자가 같지 않은 두 개가 있습니다.!=그리고.. 그들 사이의 차이점은 무엇입니까?나는 그것을 들다.!=문자열을 비교하는 데 다른 것보다 효율적입니다.이 성명서에 대해 질적인 논평을 해주실 수 있나요?그들은 (세 번째 형태와 마찬가지로) 동일합니다.^=). 그러나, 그것들은 여전히 파서의 관점, 즉 다음을 위해 정의된 저장된 개요와 다른 것으로 간주됩니다.!=어울리지 않음또는^=. 이것은 같지 않습니다.PostgreSQL파서가 치료하는 곳!=그리고.아직 구문 분석 단계이므로 오버로드할 수 없습니다.!=그리고.다른 연산자가 되는 것.둘 사이에는 기능적 또는 성능적 차이가 없습니다.원하는 구문을 사용합니다. 함수나 프로시저를 선언할 때 AS와 IS를 사용하는 것과 같습니다..

programing 2023.06.14

오라클에서 글로벌 임시 테이블을 피하는 방법

오라클에서 글로벌 임시 테이블을 피하는 방법 우리는 방금 SQL 서버 저장 프로시저를 오라클 프로시저로 변환했습니다.테이블에 크게 의존했습니다(SQL Server SP의 경우).INSERT INTO #table1...이 테이블은 오라클에서 글로벌 임시 테이블로 변환되었습니다.의 400 SP, 400 SP, 500 GTT의 약 했습니다. 이제 성능 및 기타 문제로 인해 오라클에서 GTT로 작업하는 것이 마지막 옵션으로 간주된다는 것을 알게 되었습니다. 다른 대안들은 무엇이 있습니까?컬렉션?커서? GTT의 일반적인 사용법은 다음과 같습니다. GTT에 삽입 INSERT INTO some_gtt_1 (column_a, column_b, column_c) (SELECT someA, someB, someC FROM..

programing 2023.06.14