How to make SQL Server 2008 compatible to SQL Server 2000 I have to run the backup of SQL Server 2000 in SQL Server 2008.

While restoring the database from the .bak file, I got the error 


  specified cast is invalid


After doing google I feel there is compatibility issue. Therefore I want to make the database compatibile to SQL Server 2000.

And run the below query

ALTER DATABASE  DBNAME 
SET COMPATIBILITY_LEVEL = 80


but nothing help. Any help will be appreciated.
The complete error message is :

Specified cast is not valid. (SqlManagerUI)

------------------------------
Program Location:&lt;br/&gt;
  at &lt;br/&gt;Microsoft.SqlServer.Management.SqlManagerUI.SqlRestoreDatabaseGeneral.PopulateGridWithBackupSetsFromDevices()&lt;br/&gt;
   at &lt;br/&gt;Microsoft.SqlServer.Management.SqlManagerUI.SqlRestoreDatabaseGeneral.GetBackupSetsFromDevices()&lt;br/&gt;
   at &lt;br/&gt;Microsoft.SqlServer.Management.SqlManagerUI.SqlRestoreDatabaseGeneral.textDeviceSelected_TextChanged(Object sender, EventArgs e)&lt;br/&gt;
   at System.Windows.Forms.Control.OnTextChanged(EventArgs e)&lt;br/&gt;
   at System.Windows.Forms.TextBoxBase.OnTextChanged(EventArgs e)&lt;br/&gt;
   at System.Windows.Forms.Control.set_Text(String value)&lt;br/&gt;
   at System.Windows.Forms.TextBoxBase.set_Text(String value)&lt;br/&gt;
   at System.Windows.Forms.TextBox.set_Text(String value)&lt;br/&gt;
   at &lt;br/&gt;Microsoft.SqlServer.Management.SqlManagerUI.SqlRestoreDatabaseGeneral.bu&lt;br/&gt;ttonSelectDevice_Click(Object sender, EventArgs e)&lt;br/&gt;
   at System.Windows.Forms.Control.OnClick(EventArgs e)&lt;br/&gt;
   at System.Windows.Forms.Button.OnClick(EventArgs e)&lt;br/&gt;
   at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)&lt;br/&gt;
   at System.Windows.Forms.Control.WmMouseUp(Message&amp; m, MouseButtons button,Int32 clicks)&lt;br/&gt;
   at System.Windows.Forms.Control.WndProc(Message&amp; m)&lt;br/&gt;
   at System.Windows.Forms.ButtonBase.WndProc(Message&amp; m)&lt;br/&gt;
   at System.Windows.Forms.Button.WndProc(Message&amp; m)&lt;br/&gt;
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message&amp; m)&lt;br/&gt;
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message&amp; m)&lt;br/&gt;
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, &lt;br/&gt;&lt;IntPtr wparam, IntPtr lparam)&lt;br/&gt;
According to the following link there is a step missing: 

http://blogs.technet.com/b/mdegre/archive/2012/06/15/migration-sql-server-2000-to-sql-server-2012.aspx


You must first update your SQL Server 2000 by upgrading to SP4 before making a backup to restore onto SQL Server 2008.  


The TechNet link refers to moving from SQL Server 2000 to SQL Server 2012, but the first step is moving from SQL Server 2000 SP4 to SQL Server 2008.

If going all the way to a current version of SQL Server you will have to make the migration in two steps:


Step 1: Make a first migration from SQL Server 2000 to SQL Server 2008 for instance. You need to be on SQL Server 2000 SP4.
Step 2: Make a second migration from SQL Server 2008 to 2012.