1 | 2 | 3 | 4 |最初 次ページ >> ▼ /
2006-02-28 11:55:39

【DBAⅠ】制約の管理 その2

テーマ:ORACLE

今回は、制約の管理の2回目です。


学習時間[2.0H]



◆ PRIMARY KEY 制約とUNIQUE 制約

 ・これらの制約の定義により作成される索引は、表が格納される
  表領域に格納される
 ・表と別の表領域に格納する場合は、USING INDEX句で表領域を指定



◆ FOREIGN KEY(参照整合性)制約

 ● 参照整合性制約から参照される親表の削除
  DROP TABLE 親表 CASCADE CONSTRAINTS

 ● 親表の切り捨て
  ・FOREIGN KEY制約を削除→親表切り捨て

 ● 親表を含む表領域の削除
  DROP TABLESPACE 表領域名 INCLUDING CONTENTS
   CASCADE CONSTRAINTS
 ● 自己参照型の外部キーがついている場合
  ・データロード後に制約有効化の設定
  ・制約チェックタイミング遅延可能



◆ 列制約の実装

 [CONSTRAINT 制約名]
  { [ NOT ] NULL
   |UNIQUE [ USING INDEX 索引句 ]
   |PRIMARY KEY [ USING INDEX 索引句 ]
   |REFERENCES [ スキーマ名. ] 表名 [ ( 列名 ) ]
    [ ON DELETE CASCADE ]|CHECK ( 条件 ) ] }
  [ NOT DEFERRABLE
   |DEFERRABLE [ INITIALLY { IMMEDIATE|DEFERRED } ] ]
  [ DISABLE|ENABLE [ VALIDATE|NOVALIDATE ] ]


 ・CREATE TABLE文またはALTER TABLE ADD文で表の各列に対して定義



◆ 表制約の実装

 [CONSTRAINT 制約名]
  { UNIQUE ( 列名 [,列名 ]・・・ ) [ USING INDEX 索引句 ]
   |PRIMARY KEY ( 列名 [,列名 ]・・・ ) [ USING INDEX 索引句 ]
   |FOREIGN KEY ( 列名 [,列名 ]・・・ )
   |REFERENCES [ スキーマ名. ] 表名 [ ( 列名 [,列名 ]・・・ ) ]
    [ ON DELETE CASCADE ]|CHECK ( 条件 ) ] }
  [ NOT DEFERRABLE
   |DEFERRABLE [ INITIALLY { IMMEDIATE|DEFERRED } ] ]
  [ DISABLE|ENABLE [ VALIDATE|NOVALIDATE ] ]


 ・CREATE TABLE文またはALTER TABLE文で定義



◆ 有効化

 ・DISABLE → ENABLE VALIDATE → ENABLE NOVALIDATE
  このように」変更すると表にロックがかからない
 ・ENABLE状態では新規データに対する制約が施行され、VALIDATE
  状態では既存データに対する制約が施行される



◆ ENABLE NOVALIDATE状態への移行

 ALTER TABLE [ スキーマ名. ] 表名
  ENABLE NOVALIDATE
  { CONSTRAINT 制約名
   |PRIMARY KEY|UNIQUE ( 列名 [,列名 ]・・・ ) }


 ・表はロックされず既存データに対する制約のチェックは行われない



◆ ENABLE VALIDATE状態への移行

 ALTER TABLE [ スキーマ名. ] 表名
  ENABLE VALIDATE
  { CONSTRAINT 制約名
   |PRIMARY KEY |UNIQUE ( 列名 [,列名 ]・・・ ) }
  [ EXCEPTIONS INTO [ スキーマ名. ] 表名 ]


 ・表はロックされ、既存データへの制約チェック完了までDML操作待機状態



◆ EXCEPTIONS表の使用

 ・制約違反データの除去


 <手順>
  ① utlexcept.sqlを実行し、EXCEPTIONS表を作成する。
  ② ALTER TABLE ADD CONSTRAINT ・・・ EXCEPTUIONS文を使用し、
    制約違反データを検出する。
  ③ EXCEPTIONS表を検索し、違反データを確認する。
  ④ 制約に違反するデータを修正後、EXCEPTIONS表を切り捨てる。
  ⑤ ②から④まで、制約に違反するデータが無くなるまで繰り返す。



◆ 制約情報の取得


 ・DBA_CONSTRAINTSデータ・ディクショナリ
   制約の定義情報
 ・DBA_CONS_COLUMNSデータ・ディクショナリ
   制約の定義された列の情報




よろしければ、1クリック お願いいたします。m(_ _)m
↓↓↓↓↓↓↓
ランキング


AD
いいね!した人  |  コメント(0)  |  リブログ(0)
最近の画像つき記事
 もっと見る >>
2006-02-27 11:57:17

地域限定

テーマ:食の部屋
ポテトチップス


いろいろな地域限定品を見てきましたが、

これは初めて見ました。



ポテトチップスなのですが、『埼玉限定』って

書いてあります。

埼玉県深谷市は、全国的に(?)有名なネギの産地。

その『深谷ネギ』を入れたポテトチップス。

しかも、これが深谷市で売っていたわけではなく、

同じ埼玉県の秩父市で売っていました。



思わず買おうとした手が、止まりました。

値札を見て...



結局、買ってないので、どんな味なのか、わかりませんが、

知っている方は、情報をお寄せください。



よろしければ、1クリック お願いいたします。m(_ _)m
↓↓↓↓↓↓↓
ランキング
AD
いいね!した人  |  コメント(0)  |  リブログ(0)
2006-02-26 07:20:51

人間にとって一番大事なもの

テーマ:ちょっと一言
斎藤 孝
コミュニケーション力

コミュニケーションの大切さを痛感させられました。


コミュニケーションの基本原則

 1.目を見る
   → 人の目なんか見れるか!
     恥ずかしい...

 2.微笑む
   → 笑えるかっ!キモイ!
     でも、子供と話すとき、笑ってるよな、俺...

 3.うなずく
   → 実践しているような気がする...

 4.相槌をうつ
   → たまに...


コミュニケーション・スキル

 1.言い換え力
  話しを理解していれば、言い換えることが可能
  でも、その前にボキャブラがあまりないので...

 2.コメント力
  大概、「よかった」や「すごい」という形容詞的なもので
  終わってしまいます。やはり、ボキャブラがない...

 3.質問力
  質問?  しないねぇ  何も考えてないのかなぁ...

 4.人間理解力
  人を外見や話し方で判断してしまいがち。


この本を読んで、かなり反省しています。

今まで、自分がいかにコミュニケーションを避けてきたか、という

ことを...

そして、人を外見や話し方で好き嫌いを決め付けてしまう。

一度、「嫌い」と思ってしまうと、コミュニケーションは閉ざされ

ます。これからは、「嫌い」と思う前に、「これがこの人の癖なんだ」

と思って、楽しみながら会話していこうと思っております。



その他にも、コミュニケーション・スキルを高めるこんな本があります。

森山 卓郎
コミュニケーション力をみがく ~日本語表現の戦略

高梨 敬一郎
社会人として必要な「聞く力・話す力」の高め方―会話技術トレーニングブック パブリックスピーキングに欠かせない会話4力(論理力、表現力、理解力、対応力)をどう身につけるか

中谷 彰宏
いい質問は、人を動かす。 質問力を高める56の具体例


よろしければ、1クリック お願いいたします。m(_ _)m
↓↓↓↓↓↓↓
ランキング

AD
いいね!した人  |  コメント(2)  |  リブログ(0)
2006-02-24 21:54:10

Windows Update ができない!

テーマ:ちょっと一言
先日、マイクロソフトよりセキュリティ・ホールに関する報告があり、

Windows Update がWEBサイトに載っていました。


「Windows Media Playerの脆弱性により,リモートでコードが実行される (911565)(MS06-005)」 および「Windows Media Playerプラグインの脆弱性により,リモートでコードが実行される (911564)(MS06-006)」

がそれです。


しかし、Updateをしようとしても、どうしても途中で止まって

しまうんです。


こんなかんじで...


Windows Update


なんなんですかね? これは...

結構、困ってます...   (´ヘ`;) う~ん・・・



よろしければ、1クリック お願いいたします。m(_ _)m
↓↓↓↓↓↓↓
ランキング

いいね!した人  |  コメント(2)  |  リブログ(0)
2006-02-23 11:59:45

【DBAⅠ】制約の管理 その1

テーマ:ORACLE

今回も2回に分けます。

まずは、制約の管理の前編です。


学習時間[1.5H]



◆ データ整合性の保証

 ・ アプリケーション・コード
   ストアド・プロシージャ、クライアント・アプリケーションに
   よる整合性の保証

 ・データベース・トリガー
   表へのDML操作によって起動されるトリガーにより、整合性制約
   では実装できない複雑な整合性の保証

 ・整合性制約
   表に無効なデータが存在しないことを表に定義された整合性制約
   により保証



◆ 制約の種類

 ・NOT NULL
   NULL値禁止

 ・UNIQUE
   重複した値禁止(一意キー)

 ・PRIMARY KEY
   主キー、1つの表に1つだけ、NULL値、重複値禁止

 ・FOREIGN KEY
   外部キー、別な行の値を参照

 ・CHECK
   定められた条件に適合しているかチェック



◆ 参照整合性制約

 ・外部キー
   参照整合性制約の定義に含まれており、参照キーを参照する列

 ・参照キー
   一意キーまたは主キーのうち、外部キーによって参照されるキー

 ・依存表/子表
   外部キーを含む表。この表は、参照される一意キーまたは主キー
   にある値に依存している

 ・参照表/親表
   子表の外部キーが参照する表。この表の参照キーによって子表に
   対する特定の挿入または更新が許可されるかどうかが決まる



◆ 制約の状態

 ・DISABLE NOVALIDATE
   既存データチェック、新規挿入データチェックどちらも実施せず

 ・DISABLE VALIDATE
   表への変更(INSERT、UPDATE、DELETE)不可、制約は無効で
   対応する索引も削除

 ・ENABLE NOVALIDATE
   既存データチェックは行わない、新規挿入データチェック実施

 ・ENABLE VALIDATE
   既存データチェック、新規挿入データチェックどちらも実施



◆ 制約チェックのタイミング

 ・NOT DEFERRABLE(即時制約)
   DML文終了時に制約チェック
   違反しているとDML文取り消し
   トランザクションのコミット時にチェック実施できない

 ・DEFERRABLE(遅延制約)
   トランザクションコミット時に制約チェック
   違反しているとトランザクション取り消し



◆ タイミングの変更

 ・初期遅延と初期即時の間で切り替え可能


 ● SET CONSTRAINTS文
  SET CONSTRAINT [ S ] { 制約名|ALL }
   { IMMEDIATE|DEFERRED }


 ・トランザクション継続中、または別の SET CONSTRAINTS文
  が発行されるまで有効
 ・個々の制約ごとに制約チェックのタイミングが設定可能


 ● ALTER SESSION文
  ALTER SESSION SET CONSTRAINT [ S ] =
   { IMMEDIATE|DEFERRED|DEFAULT };


 ・セッションの期間中、またはセッション期間中に変更される
  まで有効
 ・特定の制約は指定不可
 ・暗黙的にすべての遅延制約が変更される




よろしければ、1クリック お願いいたします。m(_ _)m
↓↓↓↓↓↓↓
ランキング


いいね!した人  |  コメント(0)  |  リブログ(0)
1 | 2 | 3 | 4 |最初 次ページ >> ▼ /

AD

ブログをはじめる

たくさんの芸能人・有名人が
書いているAmebaブログを
無料で簡単にはじめることができます。

公式トップブロガーへ応募

多くの方にご紹介したいブログを
執筆する方を「公式トップブロガー」
として認定しております。

芸能人・有名人ブログを開設

Amebaブログでは、芸能人・有名人ブログを
ご希望される著名人の方/事務所様を
随時募集しております。