2016-03-25 10 views
0

私はUpdate Update Cascadeを実行したいと思いますが、otacleはそれをサポートしていません。私は、Oracleで全体の "ロジック" をしたいので、参照oracleのON CASCADE CONSTRAINTの使用

create table parentTable 
    (
     Username varchar2 (50) primary key, 
     password varchar2 (50) 
    ); 

    create table childTable 
    (
     ID varchar2 (10), 
    Name varchar2 (50), 
    email_address varchar2 (50) references parentTable (Username) 
    ); 
+0

外来キーですか? – Thomas

+0

お返事ありがとうございます。 – Programmer

答えて

0

することができますか?はい。あなたはすべきですか?ほとんど間違いない。

use this AskTom package to generate triggers that implement cascading updatesです。これは、いくつかのトリガーとパッケージを生成し、カスケード更新に必要なさまざまなロジックを実装します。

ただし、機能的には、カスケード更新を実装するためにデータベース内で実行される多くの移動部分です。一般に、カスケード更新を実行することを希望する場合は、プライマリキーの選択が理想的でないことを意味します。主キーは不変でなければなりません。この例では、parentTableの主キーが変更されないシーケンス生成値に変更され、username/emailuniqueに変更されることを強くお勧めします。子テーブルは、不変シーケンス生成値を外部キーとして使用することができ、ユーザーはさまざまな子テーブルを介して更新をカスケードする必要なく、電子メールアドレスを自由に更新できます。

関連する問題