2008-08-21 27 views
4

Wir haben versucht, viele Spalten von Nullable auf nicht Nullable zu ändern. Dazu werden alle zugehörigen Objekte gelöscht, die Änderungen vorgenommen und die zugehörigen Objekte neu erstellt.Ist es in Ordnung, SQL-Statistiken zu löschen?

Wir haben SQL Compare verwendet, um die Skripts zu generieren, aber mir ist aufgefallen, dass SQL Compare keine Statistikobjekte skriptet. Heißt das, es ist in Ordnung, sie fallen zu lassen und die Datenbank wird so gut funktionieren wie vorher ohne sie, oder hat Red Gate einen Trick verpasst?

Antwort

2

Es bewährte Verfahren automatisch erstellt und Auto-Update-Statistik berücksichtigt wird. Sql Server wird sie erstellen, wenn sie sie benötigt. Sie werden oft sehen, dass der Optimierungsassistent eine Menge davon generiert, und Sie werden auch sehen, dass Sie Statistiken als Teil Ihres Wartungsplans aktualisieren, aber dies ist nicht notwendig und könnte die Dinge sogar verschlimmern, nur so lange wie automatisch erstellt und automatische Aktualisierung ist aktiviert.

0

Warum fallen Objekte? Mir scheint, dass die Sequenz viel einfacher und weniger destruktiv sein sollte: Weisen Sie allen diesen Objekten einen Standardwert zu, und nehmen Sie dann die Änderung auf "nicht nullbar" vor.

0

Die Statistiken sind zu datenspezifisch, um sie zu bearbeiten. Es wäre möglicherweise sehr ineffizient, sie blind auf einem Datensatz neu zu erstellen.

2

Wenn Sie Update Statistiken und Auto haben erstellen Statistiken auf, dann sollte es funktioniert wie vor können Sie auch sp_updatestats oder UPDATE STATISTICS WITH FULLSCAN ausführen, nachdem Sie die Änderungen vornehmen

Verwandte Themen