私のデータベースにはすでに複数のテーブルがあります。いくつかの列にはかなりの数の列があります。既存のテーブルと一致するユーザー定義のテーブルタイプを自動的に生成
これらのテーブルを使用してマージステートメントを実行するストアドプロシージャをいくつか作成します。これを行うには、ストアドプロシージャのパラメータをUser Defined Table型にしたいと思います。
私は各テーブルからスクリプトを出し、それをユーザー定義のテーブルタイプ作成ステートメントに変更できます。
私が本当に好きなのは、自分のデータベースの既存のテーブルからユーザー定義のテーブルタイプを生成する方法です。それから、そのスクリプトを自分のデータベースビルドに追加することができました。そして、テーブルに新しい列を追加することは複数の編集を必要としません。
これを行う方法はありますか?それとも、テーブルをスクリプト化するだけで忙しいのですか?
システムストアドプロシージャがあります。 'sp_columns'を実行すると、すべてのメタデータを取り出すことができます。あなたはそれをマッサージし、動的SQLを使用してクローンテーブルを作成することができます。私はあなたが 'SELECT * INTO NewTable FROM OldTable WHERE 42 = 13'を使って既存のテーブルと同じ構造を持つ新しい空のテーブルを作成することを考えていると仮定していますが、行はありません。 – HABO
@ user92546 - 'table'と' user defined table type 'は同じものではありません。 – MatBailie