2012-03-23 12 views
0

これは私がちょうど同僚のマシンで目撃した非常に奇妙なシナリオでした。部分的な結果しか返さないSSMS

SSMSでupdateステートメントを発行しているうちに、返されたメッセージが単一のレコードが更新されたことがわかりました。すべてのレコードに対して同じテーブルをクエリすると、SQLは前のupdateステートメントのwhere句と一致しない単一の結果のみを返しました。この現象を何度も再現することができました。

私たちは、新しいクエリ]タブを開き、まったく同じ(コピー&ペースト) select *クエリを実行し、そしてこのウィンドウでは、18枚のレコードは、私たちの update文の where句に合致するレコードを含む戻されました。

最初のタブに戻り、select *を実行しても、単一のレコードしか作成されませんでした。私たちは、そのタブでSQLインスタンスに再接続しようとしましたが、その後完全な18の結果を返すことができました。

どうしましたか? SSMSには何らかのエラーがあるようですが、「壊れた」タブのupdateselect(1つ)のレコードには非常に困惑しています。誰もこれの前にこのような何かを見ましたか?

+0

このタブを別のインスタンスに接続できますか? –

答えて

2

誰かが以前にそのウィンドウ内でSET ROWCOUNT 1を発行していましたか?あなたが描写しているものは、まさにこのように聞こえる。

行数を変更することによる影響は、SET ROWCOUNT 0でオフにすることができます。

このオプションの詳細はin MSDNを超えています。

+0

あなたはそうです、 'SET ROWCOUNT 1'はまったく同じことをしました。私はそれの兆候は見えませんでしたが、私は尋ねなければならないでしょう。 – Colin

+0

彼はいいえ、私はそれが何とか起こったと考える必要があります。 – Colin

関連する問題