SQL Serverのタイムアウト保存テーブル


16

SSMSを使用して、SQL Server 2005で多くのデータを含むテーブルに列を追加しようとしています。

そこで、テーブルを参照し、[変更]を選択して、新しい列を追加します。次に、[保存]を押すと、次の警告が表示されます。

大量のデータを含むテーブルへの定義変更の保存には、かなりの時間がかかる可能性があります。変更の保存中は、テーブルデータにアクセスできません

私はそれでいいです、DBはオフラインであり、私は世界中に常にいるので、はいを押します。

ただし、操作は次のメッセージで約30秒後にタイムアウトに進みます。

テーブルを変更できません。タイムアウトになりました。操作が完了する前にタイムアウト期間が経過したか、サーバーが応答していません。

次に、[OK]を押すと:

ユーザーが保存ダイアログをキャンセルしました(MS Visual Database Tools)

わかりません。SSMS接続ダイアログと[ツール]-> [オプション]-> [クエリ実行]-> [SQL Server]の両方で、実行タイムアウトを0(無限)に設定しました。無視された場合、実行タイムアウトを設定するポイントは何ですか?

ここで使用されているタイムアウト値とその設定方法を知っている人はいますか?

回答:


27

タイムアウト設定のように聞こえます。したがって、SSMSは時間がかかりすぎると判断し、接続をキャンセルします。SQLサーバーのロールバック。しかし、助けがあります。あなたはこれに遭遇する最初の人ではありません。

こちらをご覧ください

リンクをクリックしたくないすべての人のために。価格に勝つ答えは次のとおりです。

同じエラーを見つけた後、私は現在の設定につまずいた。

Management Studioで、[ツール]メニューから[オプション]を選択し、[デザイナー]をクリックします。「テーブルデザイナーの更新の接続文字列タイムアウト値を上書きする」というオプションがあります。「トランザクションタイムアウト後:」ボックスに、30秒の魔法が表示されます。


6

//以下をせよ:

SQL Server管理スタジオを開きます-> [ツール]メニュー-> [オプション]-> [デザイナー]タブ-> [テーブルとデータベースデザイナー]->タイムアウトを30秒から65535秒に増やします。--> OK

//これで、テーブルの変更を保存できます。//役立つことを願って、私のブログ@をチェックしてください://www.ogolla.blogspot.com


1
すごい18時間以上のタイムアウト設定です。お昼寝の時間!
ピーターシューツェ14

0

SSMSは一般的なデータ変更に使用しないでください。T-SQLに慣れて、以下に示すように列を追加してください。

ALTER TABLE TableName ADD NewColumn INT

SSMSは実際には、すべての列を持つ新しいテーブルを作成し、新しいテーブルにデータをインポートして、古いテーブルを削除しています。たとえあなたが世界にずっといるとしても、物事を効率的に行う方法があれば、正しい方法を使うべきです。この混乱を避けるため、SQL Server 2008ではGUIメソッドIIRCを許可しません。


3
あなたの言ってる事がわかります。しかし、特定の順序で列を配置することを好みます。愚かな、あなたは思うかもしれませんが、あなたはそれを持っています。ALTER TABLEを使用して、新しい列が最後に追加されます。これが、SSMSが実際にテーブルを削除して再作成する必要がある理由だと思います。
トーアハウゲン
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.