0

複雑な sql コマンドでステートメントへの挿入を使用しようとしました。2 つのエラーが発生しました。

このコンテキストでは、サブクエリは許可されていません。スカラー式のみが許可されています。" および "')' 付近の構文が正しくありません。

声明:

Insert into 
[TestSystem2].[dbo].[Test_Software_Mandant_Status] ([SW_IDN], [Mandant_IDN],
Software_Status], [UserName], [TimeStamp])
values
(15000, 9999,
  (SELECT [Software_Status] 
  FROM [TestSystem2].[dbo].[Test_Software_Status] 
  WHERE [Software_Status_Kennzeichen] = 'S' and [Software_Status_Text] = 'Test'),
testuser,
SELECT GETDATE())

他の場所で同様の構造化された更新コマンドを使用しましたが、それは機能します。この挿入に変数を使用するのは好きではありません。誰かがこの問題を解決するのを手伝ってくれますか?

4

2 に答える 2

1

代わりにこれを試してください:

Insert into [TestSystem2].[dbo].[Test_Software_Mandant_Status] ([SW_IDN], 
                                                               [Mandant_IDN],
                                                               [Software_Status],
                                                               [UserName],
                                                               [TimeStamp])
SELECT 15000, 
       9999, 
       [Software_Status], 
       testuser, 
       GETDATE()
FROM [TestSystem2].[dbo].[Test_Software_Status] 
WHERE [Software_Status_Kennzeichen] = 'S' 
  and [Software_Status_Text] = 'Test',
于 2013-07-04T14:51:52.270 に答える