OracleDB - VIEW, SEQUENCE, INDEX
📘 VIEW
->表の形状ですが、実際の値は保存されていません.
📜 VIEW用途
1)複雑なSELECT文の再利用を容易にするために使用する.
2)机の正体を隠すことができ、警備員に有利である.
📜 VIEW使用上の注意事項
1)仮想テーブル(エンティティX)であるため,ALTER構文は使用できない.
2)DML(INSERT、UPDATE、DELETE)をVIEWで行う場合があります.
多くの制約を受けるため、クエリ(SELECT)に多く使用される.
3)VIEWのINSERTを使用してソーステーブルに挿入する.
元のテーブルを挿入すると、VIEW INSERT構文に含まれていないカラムにNULLが格納されます.
ただし、DEPT TITLE列にはNOT NULL制約が設定されています.
エラー!VIEWのINSERTの使用に失敗しました
!! 結論:VIEWではなるべくDMLを使わないように!!!
VIEW作成方法
CREATE [OR REPLACE] [FORCE | NOFORCE] VIEW 뷰이름 [(alias[,alias]...] AS subquery
[WITH CHECK OPTION]
[WITH READ ONLY];
複数のオプション
OR REPLACEオプション
->既存のビュー名が同じ場合は上書きし、存在しない場合は新規ビューを作成します.
FORCE/NOFORCEオプション
FORCE:サブクエリで使用されるテーブルが存在しなくてもビューを作成
NOFORCE:サブクエリで使用されるテーブルが存在する場合にのみビューが作成されます(デフォルト)
WITH CHECK OPTIONオプション
->設定オプションのカラムの値は変更できません.
WITH READ ONLYオプション
->ビューのみ表示可能(DMLはサポートされていません)
📘 SEQENCE(シーケンス、連続)
EX) 1 2 3 4 5 6 7 8 9 .....
📜 SEQENCEの使用方法
PRIMARY KEYコラムの生成に使用する値!
1)シーケンス名.NEXTBAL:次のシリアル番号を取得します.(増分は増分BY)
ただし、シーケンス作成後の最初の呼び出しであれば、START WITHの値が得られます.
2)シーケンス名.CURRVAL:現在のシリアル番号を取得します.
ただし、シーケンス作成後にNEXTBALを呼び出さずにCURRVALを呼び出すとエラーが発生します.
SEQUENCE合成方法
CREATE SEQUENCE 시퀀스이름
[STRAT WITH 숫자] -- 처음 발생시킬 시작값 지정, 생략하면 자동 1이 기본
[INCREMENT BY 숫자] -- 다음 값에 대한 증가치, 생략하면 자동 1이 기본
[MAXVALUE 숫자 | NOMAXVALUE] -- 발생시킬 최대값 지정 (10의 27승, -1)
[MINVALUE 숫자 | NOMINVALUE] -- 최소값 지정 (-10의 26승)
[CYCLE | NOCYCLE] -- 값 순환 여부 지정
[CACHE 바이트크기 | NOCACHE] -- 캐쉬메모리 기본값은 20바이트, 최소값은 2바이트
SEQUENCE(ALTER)の変更
ALTER SEQUENCE 시퀀스이름
[STRAT WITH 숫자] -- 처음 발생시킬 시작값 지정, 생략하면 자동 1이 기본
[INCREMENT BY 숫자] -- 다음 값에 대한 증가치, 생략하면 자동 1이 기본
[MAXVALUE 숫자 | NOMAXVALUE] -- 발생시킬 최대값 지정 (10의 27승, -1)
[MINVALUE 숫자 | NOMINVALUE] -- 최소값 지정 (-10의 26승)
[CYCLE | NOCYCLE] -- 값 순환 여부 지정
[CACHE 바이트크기 | NOCACHE] -- 캐쉬메모리 기본값은 20바이트, 최소값은 2바이트
->シーケンスを削除して
📘 INDEX(インデックス)
📜 INDEXのメリットとデメリット
インデックスの利点
インデックスの欠点
頻繁な
INDEX合成方法
CREATE [UNIQUE] INDEX 인덱스명
ON 테이블명 (컬럼명, 컬럼명, ... | 함수명, 함수계산식);
->PKまたはUNIQUE制約を設定する場合は
Reference
この問題について(OracleDB - VIEW, SEQUENCE, INDEX), 我々は、より多くの情報をここで見つけました https://velog.io/@orol116/OracleDB-VIEW-SEQUENCE-INDEXテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol