0

次のクエリを実行すると、0 行が影響を受けます。誰かがこれを修正するのを手伝ってくれますか?

UPDATE PLAN 
SET PLANID = (SELECT PLANID FROM MODE WHERE [NAME]='Sam')
WHERE CUSTOMERID IN (SELECT CUSTOMERID FROM ENTITYCUSTOMER WHERE EMPID = 707)

(SELECT PLANID FROM MODE WHERE [NAME]='Sam')単一のコードを返します

(SELECT CUSTOMERID FROM ENTITYCUSTOMER WHERE EMPID = 707)複数の値を返す場合があります。

これに対する解決策が必要なのを助けてください。ありがとう

4

1 に答える 1

0
SELECT PLANID FROM MODE WHERE [NAME]='Sam'

「MODE」テーブルは、PLANID をキーにしてはなりません。そのため、特定の値を更新にバインドできません。1 つのオプションは、カーソルを作成し、更新する正しい値を読み取ることです。もう 1 つは、使用しているクライアント コード言語 (おそらく .net 言語?) でこれを行うことです。

于 2012-05-03T03:48:30.867 に答える