・GROUP BY句とHAVING句の順番は交換できる
・ORDER BY句はGROUP BY句と一緒に使用する場合、ORDER BYではGROUP BY句で指定したいずれかの列を使用しなければならない。
◆関数
・ADD_MONTH(日付,n)
指定した日付が月末の場合、nヶ月後の月末日を戻す。
・LENGTH
スペースを含めた文字数が戻ります
LENGTH関数は、全角文字(漢字、ひらがな等)を1文字とします
・LENGTHB
バイト単位の文字列の長さを調べる
◆SQLPLUSコマンド
・CHANGEコマンド
機能:文字列を置換する(区切り文字は任意に設定可能)
構文:C[HANGE sep 置換対象文字列 [ sep [置換文字列 [sep]]
説明:
・SQLバッファ内の置換対象文字列を置換文字列で置き換えます
・sepは、区切り文字で、任意に指定することができます(半角文字)
・置換対象文字列が複数存在する場合には、先頭の1つのみを置換します
・置換文字列後の区切り文字の指定は、任意です
◆制約
・参照整合性制約
親表の親キーには、主キー制約又は一意キー制約の設定が必須。
親表の定義後に、子表の外部キーを定義することができる
外部キーは1つまたは複数の列の組み合わせで指定する
・副問い合わせによる表作成でコピー可能なものは、以下の通りです
表定義、データ、NOT NULL制約
・制約のタイプ
制約タイプはビューUSER_CONSTRAINTSの列CONSTRAINT_TYPEの値による調べる
C...CHECKまたはNOT NULL
P...主キー(PRIMARY KEY)
U...一意キー(UNIQUE)
R...参照整合性(REFERENCES)
V...WITH CHECK OPTION指定のビュー
O...WITH READ ONLY指定のビュー
外部キーは1つまたは複数の列の組み合わせで指定する
・副問い合わせによる表作成でコピー可能なものは、以下の通りです
表定義、データ、NOT NULL制約
・制約のタイプ
制約タイプはビューUSER_CONSTRAINTSの列CONSTRAINT_TYPEの値による調べる
C...CHECKまたはNOT NULL
P...主キー(PRIMARY KEY)
U...一意キー(UNIQUE)
R...参照整合性(REFERENCES)
V...WITH CHECK OPTION指定のビュー
O...WITH READ ONLY指定のビュー
◆ビュー
・複数の表からビューを作成できます
・ビューをもとにビューを作成できます ・ビューを使用して更新、追加、削除ができます(制限あり)
・ビューを書き換えることができます
・元表がない場合にもFORCE句を指定するとビューを作成できます
・ビューの元表が削除されてもビューは削除されません(無効になる)
◆データ型
・ NUMBER型
指定桁数に収まらない数値は格納できません。エラーになります
桁数を越えた整数部はエラーになります
桁数を越えた小数部は四捨五入されます
◆シノニム
・パブリック・シノニムの作成
CREATE PUBLIC SYNONYM シノニム名 FOR オブジェクト名;
パブリック・シノニムを作成するには、CREATE PUBLIC SYNONYM権限が必要
パブリック・シノニムは、データベースのすべてのユーザーがアクセスできる
シノニム名の最大長は32バイト(通常30バイトまで、例外は、Java の機能使用する場合)
スキーマ・オブジェクトは、存在しなくてもシノニムを作成できる
スキーマ・オブジェクトにアクセスするには、別途アクセス権限が必要
・ NUMBER型
指定桁数に収まらない数値は格納できません。エラーになります
桁数を越えた整数部はエラーになります
桁数を越えた小数部は四捨五入されます
◆シノニム
・パブリック・シノニムの作成
CREATE PUBLIC SYNONYM シノニム名 FOR オブジェクト名;
パブリック・シノニムを作成するには、CREATE PUBLIC SYNONYM権限が必要
パブリック・シノニムは、データベースのすべてのユーザーがアクセスできる
シノニム名の最大長は32バイト(通常30バイトまで、例外は、Java の機能使用する場合)
スキーマ・オブジェクトは、存在しなくてもシノニムを作成できる
スキーマ・オブジェクトにアクセスするには、別途アクセス権限が必要
◆ロール・権限
・ユーザに付与されるロールの確認できるビューUSER_ROLE_PRIVS | 現行のユーザーに付与されたロールを示します |
SESSION_ROLES | ユーザーが現在使用できるロールを示します |
DBA_ROLE_PRIVS | データベース内のすべてのユーザーおよびロールに付与されたロールを示します |
・ロールに含まれる権限の確認できるビュー
ROLE_SYS_PRIVS | ロールに付与されたシステム権限を示します |
ROLE_TAB_PRIVS | ロールに付与された表権限を示します |
ROLE_ROLE_PRIVS | 別のロールに付与されたロールの情報を示します |
・権限の確認できるビュー
USER_SYS_PRIVS
|
現行のユーザーに付与されたシステム権限を示します
|
SESSION_PRIVS
|
ユーザーが現在使用できる権限を示します
|
DBA_SYS_PRIVS
|
ユーザーおよびロールに付与されたシステム権限を示します
|
USER_TAB_PRIVS
|
現行のユーザーがオブジェクト所有者、権限付与者または権限受領者であるオブジェクトの権限付与を示します
|
USER_TAB_PRIVS_MADE
|
現行のユーザーがオブジェクト所有者であるオブジェクトの権限付与を示します
|
USER_TAB_PRIVS_RECD
|
現行のユーザーが権限受領者であるオブジェクトの権限付与を示します
|
DBA_TAB_PRIVS
|
データベース内のすべてのオブジェクトについての権限付与を示します
|
ALL_TAB_PRIVS_MADE
|
現行のユーザーがオブジェクト所有者または権限付与者であるオブジェクトの権限付与を示します
|
ALL_TAB_PRIVS_RECD
|
・現行のユーザーが権限受領者であるオブジェクトについての権限付与
・使用可能になっているロールまたは PUBLIC が権限受領者であるオブジェクトについての権限付与 |
0 件のコメント:
コメントを投稿