アプリ版:「スタンプのみでお礼する」機能のリリースについて

こんにちは。

-- IDENTITYを解除
SET IDENTITY_INSERT TBLA ON

--BCPコマンドを文字列として生成する
set @cmdstr = ''
set @cmdstr = 'bcp TBLA in c:\TBLA.csv -c -t , -r \n -U xx -P xx'

--生成したコマンド文字列を実行するxp_cmdshellを動的SQLで実行する
execute master.dbo.xp_cmdshell @cmdstr

-- IDENTITYを再設定
SET IDENTITY_INSERT TBLA OFF

ってな感じでやってみたのですが、
実行後TBLAの中を見てみると、IDENTITY列の値は
テキストデータの中の値ではなく、
テーブルがIDENTITYを勝手に割り振っちゃいます。

どなたか、このようなことやった方いらっしゃいませんか?

A 回答 (1件)

xp_cmdshell で実行しているコマンドは


ストアドやクエリアナライザ上のSET文で
制御できません。
(別セッションですから)

bcp の [-E keep identity values] スイッチでは
どうでしょうか?(未検証)
    • good
    • 0
この回答へのお礼

お返事が遅くなり申し訳ございません。
ご教示いただいた方法でうまくいきました。
SETもおっしゃるとおり、意味のないものでした(^^;;)
ちなみに、BULK INSERT の keepidentity オプションでもうまくいきました。
ありがとうございました!

お礼日時:2005/02/28 14:00

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す