How to check of DBCC with DATA_PURITY has run on a converted database

  • Hi,

    According to Microsoft, you'll have to run DBCC with this parameter, in order to enable further checking http://msdn.microsoft.com/en-us/library/ms176064.aspx. So I added this check to my migrationchecklist.

    But is there a way to see if this has been run on a converted database? DBCC DBINFO() ?

    Wilfred
    The best things in life are the simple things

  • If the database is 90 compatibility level you can right click on it in MS, reports, standard reports, database consistancy history. This will show the DBCC commands that have been executed and the options used.

    The only thing I'm not sure of is how long this data is stored.

    Let me know if this works for you.

  • In my experience it's a very good practice to run a CHECKDB with the DATA_PURITY option. I've had a lot of "value is out of range for data type" errors on upgraded databases.

    http://support.microsoft.com/kb/923247

    I was trying to find out about the same thing as you some time ago. I had the idea that I would have some logic around this in my database integrity check script. My solution was to always use the DATA_PURITY option. In Books Online it says like this.

    "For databases upgraded from earlier versions of SQL Server, column-value checks are not enabled by default until DBCC CHECKDB WITH DATA_PURITY has been run error free on the database. After this, DBCC CHECKDB checks column-value integrity by default."

    I understand this as once you have run DBCC CHECKDB WITH DATA_PURITY error free on an upgraded database it doesn't make any difference if you use the DATA_PURITY option or not. So you can just as well always use it.

    Ola Hallengren

    http://ola.hallengren.com

Viewing 3 posts - 1 through 2 (of 2 total)

You must be logged in to reply to this topic. Login to reply