問題タブ [dbcc]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
2303 参照

sql-server - SQL Server: 削除アクションで ID をリセットする

簡単な例を見てみましょう。testという名前のテーブルがあります:

ここに画像の説明を入力

ここで、ID ログをリセットせずに一部のデータを削除します。

ここに画像の説明を入力

新しいデータを挿入すると、新しい ID は 7 になります。

ここに画像の説明を入力

すべての削除クエリで DBCC CHECKIDENT 関数が自動的に呼び出され、テーブル テストの ID がリセットされるようにしたいと思います。したがって、「紫」を挿入すると、その ID は 4 になります。これを行う方法はありますか?

0 投票する
1 に答える
349 参照

sql-server - CHECKDB コマンドは何に使用され、なぜ実行する必要があるのですか?

check DB コマンドは何に使用され、なぜ実行する必要があるのですか?

MSSQLで実行したコマンド

DBCC CHECKDB('データベース名')

そして、私は結果を得ました

結果

0 投票する
2 に答える
1162 参照

sql-server - プロシージャ内で DBCC コマンドが機能しない

以下のクエリがあります。論理的には、プロシージャusp_mytranは table の Identity を 1 に RESEED する必要がありますdbo.Sales。しかし、最後のクエリはMax_ID_ValueCurrent_Seed_Valueに対して異なる値を返しています。DBCCコマンドがプロシージャ内で機能しない理由を誰か説明してもらえますか?

0 投票する
1 に答える
2337 参照

sql - SQL 更新テーブル エラー: DBCC の実行が完了しました。DBCC がエラー メッセージを出力した場合は、システム管理者に連絡してください。

呼び出しという名前のテーブルがあります。このテーブルの列を更新しようとすると、エラーがスローされます。サーバーに「sa」アカウントでログインしましたが、これは管理者アカウントです。上記の列の datetype は日時です。また、テーブル内の列を更新すると、以下のエラーがスローされます。

エラーの詳細

テーブルのトリガー

0 投票する
2 に答える
475 参照

sql - より大きな ID を持つ行に対して安全な DBCC CHECKIDENT で主キーをリセットします

プライマリ整数キー値とその自動インクリメントを1つずつ持つテーブルがあります。内部の値は116までうまくいきましたが、しばらくすると突然10085値から続きます..

理由はわかりませんが、データベースを縮小したのかもしれません。とにかく、DBCC CHECKIDENT コマンドについては知っています。

私の質問は、私が実行DBCC CHECKIDENT (mytable, RESEED, 116)した場合、将来 100085 からの ID を持つ行に害がありますか? ある日、行が 100084 に達すると、SQL サーバーは他の Id からジャンプするか、重複した Id を挿入するために例外をスローしますか?

0 投票する
1 に答える
1641 参照

sql-server - SQL Server のログに失敗したクエリ

システム全体のログ記録を実装しようとしています。これにより、失敗したすべてのストアド プロシージャの実行がデータベースに記録され、拡張イベントが表示されます。

私はいくつかの調査を行いましたが、次のコードを使用して失敗したステートメントをキャプチャするのは非常に簡単なようです:

ただし、失敗したステートメントをすぐにテーブルに保存したいので、呼び出しましょうLogs.Errorsが、それを行う方法が見つからず、上のメソッドはスケジュールされたジョブとして機能する必要があります。

現在、手順は次のようになっています。

Logs.LogErrorプロシージャが使用してDBCC INPUTBUFFER();いるが、パラメータをキャプチャせず、実行された正確なプロシージャのみをキャプチャする場所。それは私がそれから得ることができるすべてです:

DBCC INPUTBUFFER()可能であれば、ステートメント全体を強制的にキャプチャするか、XE でレコードをテーブルに直接挿入することで機能させる方法を探しています。

ご不明な点がございましたら、お知らせください。