5

私は、フォワードエンジニアがデータベースを作成するためのEERモデルをMySQL Workbenchに構築しました。フォワードエンジニアリングは完全に機能し、データベースは期待どおりにダイアグラムから作成されます。モデルからフォワードエンジニアリングした後、MySQLスクリプトまたはルーチンを自動的に実行するには

テーブル以外にも、モデルに含まれているストアドプロシージャ(ルーチンとも呼ばれます)があります。これらのルーチンは、データベースが設定されるとすぐに1回だけ実行されるように設計されています。テーブルに必要なデータを自動的に挿入します。

私の質問は、テーブルが作成されたら、これらのルーチンの1つを自動的に呼び出して実行するために、どのようにフォワードエンジニアリングプロセスを得ることができるかです。

現時点では、エンジニアがデータベースを転送してから手動でストアドプロシージャを呼び出す必要がありますか?

+0

私は混乱しています:ストアドプロシージャまたはスクリプトを実行したいですか?スクリプトはどこから来たのですか? –

+1

@MattFenwick、私は明確にするために質問を書き直しました。 – Spider

+0

実際に手作業を行うのはあまりにも多くのストアドプロシージャを持っていますか? –

答えて

5

ワークベンチのEERダイアグラムで、テーブルを右クリックして[編集テーブル]を選択します。これは、いくつかのタブで下部にnペインを開きます。タブはテーブル、カラム、インデックス、外部キーなどです。insertというタブがあります。このタブでは、レコードをモデルデータベースに挿入できます。

[挿入]タブをクリックすると、グリッドが表示されます。このグリッドに挿入するレコードを追加します。 これらのレコードをコミットすることを確認してください。あなたが前方に挿入文を生成するためのオプションがあり非常に最初の画面上のデータベースを設計する際に今の例

Workbench Data Insert

のためのスクリーンショットを参照してください。フォワードエンジニアオプションを選択すると、モデルの作成時に挿入するデータがスクリプト化されます。スクリプトを保存して、MySQLワークベンチに入ることなく何度も何度も実行できるようにします。

Tick Insert option

私は、更新、削除、またはワークベンチで他のデータ操作を行うためのオプションを発見していないが、私は、これはあなたが探しているものだと思います。 NOTEレコードをインポートするには、ワークベンチ経由ではできません。オプションはありません。レコードをファイルに保存することができます。しかし、それらをインポート/作成するには、それらを一度に1つずつ追加する必要があります(モデラーを追加する)。ただし、すでにレコードを持つMySQLデータベースのバックアップを作成することはできます。次に、それらのINSERTステートメントをMYSQLバックアップスクリプトからセットアップスクリプトにコピーします。

手順は、次のようになります。

  1. データベースを作成します。

  2. インポート新しく作成されたデータベース

  3. Backupデータベース

  4. を開き、バックアップファイルのコピー、あなたがで作成されたセットアップスクリプトに探しているINSERT文をペースト状にし、セットアップ/ configのレコードを含むファイルMySQLのワークベンチ

UPDATE:

私はいくつかのexperimeをしましたフォワードエンジニアリングのステップを実行するためにレビュースクリプトにアクセスすると、スクリプトを編集してストアドプロシージャを呼び出すこともできます。完了したら、スクリプトを保存してテストします。

希望に役立ちます!

+0

もう少し詳しい情報を追加しました。チェックしてください! – Namphibian

+0

ありがとうございました。ストアドプロシージャは、データベースに挿入する必要のある30,000のレコードを生成します。もう1つは、国と関連する都市に移住します。データセットが大きすぎて手動で挿入することはできません。さらなる解決策はまだ歓迎されています。 – Spider

+0

@Mark Van Wykこれらのストアドプロシージャは、エンジニアリング時にフォワードエンジニアリングで作成されますか? – Namphibian

関連する問題