2

どうにかして、pl sql パッケージのローカル バージョンとデータベースに格納されているバージョンを比較する必要があります。それを行う「簡単な」方法はありますか?現在、データベースからパッケージをダウンロードし、ファイルに保存して、差分ツールを使用して差分を実行しています。それは少し面倒なので、ide にそのような機能を持たせたいと思います (pl sql 開発者が望ましい)。

4

2 に答える 2

4

通常、開発者はバージョン管理ソフトウェアを使用して、相違点をチェックし、バージョン履歴を維持し、コードのチーム開発を調整します。PL/SQL コードも例外ではありません。コード リリースを処理するには多くの方法があります。以下は、私が見たものであり、必ずしも「最良の」方法ではありません。

私が見た Oracle 環境では、CVS または SVN が使用されています。ほとんどのアプローチには、リポジトリからの最新コードのチェックアウト、編集 (タグ付け/分岐)、およびチェックインが含まれます。コードがテストされ (開発インスタンス)、リリースの準備が整ったら、DBA はリポジトリからリリース スクリプトを取得して適用するか、または 1 人の個人が正しいリリース スクリプトを DBA に引き渡す任務を負っています (私の経験ではより一般的です)。ここでのデータベースは、通常、本番インスタンスをミラーリングするユーザー受け入れインスタンスであることに注意してください。アプリのテストに合格すると、コードは本番環境に昇格されます。

データベースと IDE の間で直接同期したい場合、私が見た 1 つのオプションは Toad Team Coding です。Toad は無料ではありません。このオプションでは、データベースに追加のオブジェクト (メタデータ/追跡テーブルなど) をインストールする必要があります。優れた概要はここにあり、優れたセットアップの記事はここにあります。

チーム コーディングは非常にクールですが、私は開発環境にのみインストールします。そこからシステムを介してコードをどのように宣伝するかは、あなた次第です。

于 2012-02-09T12:28:54.083 に答える
1

sqlplus コマンド ファイルを使用して説明した手順を自動化するのはかなり簡単です。all_source から選択し、ファイルにスプールします。コマンド ファイル内で「host diff ...」または「!diff ...」として diff コマンドを呼び出します。diff の -b オプションと -B オプションは、空白行と空白行をそれぞれ無視します。

于 2016-06-07T14:41:39.247 に答える