2 つの列 (id と name) を持つ tvp_Shipment という名前のユーザー定義テーブル タイプを作成しました。スナップショットが生成され、ユーザー定義のテーブル タイプがすべてのサブスクライバーに適切に伝達されました。
私はこの tvp をストアド プロシージャで使用していましたが、すべて正常に動作しました。
次に、このテーブル値パラメーターにもう 1 つの列 created_date を追加したいと思いました。ストアド プロシージャを (レプリケーションからも) 削除し、3 つの列を持つユーザー定義テーブル タイプを削除して再作成し、ストアド プロシージャを再作成して公開できるようにしました。
新しいスナップショットを生成すると、ユーザー定義テーブル タイプの変更がサブスクライバーに反映されません。新しく追加された列はサブスクリプションに追加されませんでした。
エラーメッセージ:
The schema script 'usp_InsertAirSa95c0e23_218.sch' could not be propagated to the subscriber. (Source: MSSQL_REPL, Error number: MSSQL_REPL-2147201001)
Get help: http://help/MSSQL_REPL-2147201001
Invalid column name 'created_date'. (Source: MSSQLServer, Error number: 207)
Get help: http://help/207