2
SQL Serverでユーザー定義のテーブル型を作成し、パラメータとしてストアドプロシージャに渡しました。SQL Server:NULL値を持つストアドプロシージャにデータテーブルを渡す
私はDataTable
を作成し、SQL Serverのテーブルタイプの列と同じ数の列を作成します。列の種類も同じです。
SQL Serverで作成したこのテーブルタイプでは、一部の列でNULL値を使用できるため、C#からヌル型として設定する必要はありません。
は、次に私が私のストアドプロシージャから:
CREATE PROCEDURE [MySP]
@Data MyDataType READONLY
AS
BEGIN
SET NOCOUNT ON;
INSERT INTO OneTable
SELECT *
FROM @Data
END
私の質問は:それはNULLとして、ユーザー定義テーブルの列を見つけたときにSQL Serverが何をするのでしょうか?それはC#のnull型を認識し、自動的に正確なSQL Server NULL
値としてOneTable
のターゲット列テーブルに挿入されますか?
これはDataTableではありません。これはSQL Serverのテーブルタイプです。 SQL Serverは、テーブルとテーブル変数でNULLを扱うのと同じ方法でNULLSを返します –