it-source

표에 제약 조건 표시

criticalcode 2023. 8. 19. 10:26
반응형

표에 제약 조건 표시

안녕하세요. 테이블 중 하나에 제약 조건을 표시하려고 하는데 어떤 이유로 행이 선택되지 않았다는 메시지가 나타납니다.아래는 제가 작성한 표입니다.

Create table Teams (
   TeamID varCHAR2(4) constraint Teams_TeamID_PK Primary Key,
   TeamName VARCHAR2(40) 
);

이것은 제 제약 조건을 보여주기 위해 사용하는 코드입니다.

SELECT constraint_name, 
       constraint_type,
       search_condition
  FROM USER_CONSTRAINTS
 WHERE table_name = 'Teams';

저는 신인이기 때문에 무엇이 잘못된 것인지 확실히 이해하고 싶습니다.제약 조건이 적용되지 않는다고 생각하고 테이블을 삭제하려고 했습니다. 테이블을 만들고 팀을 참조할 때 오류가 발생하지도 않았고, 테이블을 삭제하려고 시도했습니다.다른 테이블의 ID입니다.그래서 테이블을 떨어뜨리려고 할 때 제가 원하는 것이 언제인지 오류 메시지가 나타납니다.

사용해 보십시오.

SELECT constraint_name, 
       constraint_type,
       search_condition
  FROM USER_CONSTRAINTS
 WHERE table_name = 'TEAMS';

만들 때 큰따옴표로 묶지 않는 한 Oracle의 모든 개체 이름은 대문자입니다.

개인적으로 사용하는 항목:

SELECT * FROM all_constraints WHERE Table_Name = <TableName>;

다음 코드를 사용합니다.

show create table table_name;
select dbms_mview.get_ddl('TABLE',USER,'TEAMS') from dual;

CamelCase 이름을 선호하는 경우 테이블 만들기 스크립트는 다음과 같아야 합니다.

Create table "Teams" ( 
  "TeamID" varCHAR2(4) constraint "Teams_TeamID_PK" Primary Key, 
  "TeamName" VARCHAR2(40)  
); 

이중 따옴표를 사용하지 않으면 Oracle은 모든 식별자를 대문자로 변환하는 데 도움이 됩니다.

테이블 이름을 대문자로 입력합니다.where절이 작은 따옴표 안에 있습니다.

예.WHERE table_name = 'TEAMS';

언급URL : https://stackoverflow.com/questions/1837793/displaying-the-constraints-in-a-table

반응형