0

次の 2 つの形式Stored Proceduresで書かれたものを見たことがあります。

Method 1:
Insert Into Tablname(col1,col2) values (@col1,col2)

Method 2:
Insert Into Tablname(col1,col2) select @col1,@col2

Method1 または Method2 の利点があるかどうかを知りたいです。理由?

ありがとう!

4

3 に答える 3

0

実はこれはどちらも同じです。両者に性能差はありません。1 つの insert into ステートメントで複数のレコードを挿入する別の方法もあります。

INSERT INTO Table1 (ID, Value)
VALUES (1, 'Test1'), (2, 'Test2'), (3, 'Test3');
于 2013-09-04T08:40:49.453 に答える
0

それはかなり同じです。

(ショートカットの一種INSERT INTO...SELECT)を使用すると、ステートメントの結果からレコードを挿入できます。SELECT

INSERT INTO FooBar(Col1, Col2)
SELECT Col1, Col2
FROM sourceTable
于 2013-09-04T07:46:16.680 に答える
0

性能差はありません。それは好みの問題です。

ただし、 Method:2 を使用すると、以下のようにして複数のレコードを挿入できます。

Insert Into Tablname(col1,col2) 
select @col1,@col2
Union all
select @col2,col4

SQL Server 2008 (Row Construction) 以降では、方法 1 で次のようなことができます。

INSERT INTO Tablname (col1, col2)
VALUES (1, 'First'), (2, 'Second'), (3, 'Third');

詳細については、このリンクをご覧ください。

于 2013-09-04T08:35:22.143 に答える