0

私は15個のテーブルを持つデータベースを持っています。開発プロセスにより、データベース内のすべてのテーブルに 1 つの列を追加する必要があります。他のいくつかのサービスもこのデータベースを使用しているため、この変更は既存のプロセスには影響しません。それを達成するために、新しいデータベースを作成することを考えました。それを行う他の方法はありますか?

4

3 に答える 3

0

通常は、新しいスキーマ (「ユーザー」) を作成し、その新しいスキーマにテーブルを作成するだけで十分です。Oracle では、同じ名前のテーブルが複数のスキーマに存在する可能性があります。

CREATE USER xxx IDENTIFIED BY yyy
于 2012-12-06T06:57:01.190 に答える
0

何が問題なのalter table T add (COL varchar2(5));ですか?

もちろん、依存するストアド プロシージャまたはパッケージは無効になります。それらをそのままにしておくと、最初の呼び出しで例外が返され、呼び出されたプロシージャが自動再コンパイルされます。または、できますalter procedure P compile;

于 2012-12-06T09:08:19.380 に答える
0

開発用に別のスキーマを作成し、テーブルを新しいスキーマにインポートできます。開発者は、本番スキーマではなく開発スキーマを使用する必要があります。新しいデータベースを作成して現在のデータベースからインポートすることもできますが、それは最後のオプションかもしれません

于 2012-12-06T06:58:10.083 に答える