这个图是MSSQL2000上导入错误,原因是我已经导入过2005了,其实只要能够在MSSQL2000上导入成功,并且能够备份出BAK格式
因为我现在MSSQL2005上运行的是4月的一个BAK导入的MSSQL2000的数据,但是这个导入失败的是7月的下面是我导入MSSQL2005导入错误的提示

解决方案 »

  1.   

    还有就是
    借用第三方东西导入先导出到excel 或者 txt 然后再导到相应的数据库表,就不会有版本冲突问题了
      

  2.   

    1.如果两台机能互联,那可以在SQL2005上附加数据为,在2000上注册链接服务器.
    2.将2005的数据库备份.
    3.清空2005的所有表.
    DECLARE @NVR_CMD NVARCHAR(4000)
    DECLARE @NVR_TABLENAME NVARCHAR(128)
    DECLARE @NVR_DBNAME NVARCHAR(128)SELECT @NVR_DBNAME=DBNAME,@NVR_TABLENAME=MIN(T.[NAME]) FROM
    (
    SELECT DB_NAME() AS DBNAME,A.[NAME] 
    FROM SYSOBJECTS AS A inner join SYSINDEXES AS B  
    ON  A.ID=B.ID AND A.XTYPE='U' AND B.INDID<2  
    ) AS T GROUP BY DBNAMEWHILE NOT @NVR_TABLENAME IS NULL BEGIN SET @NVR_CMD='DELETE FROM ' + @NVR_TABLENAME 
    EXECUTE(@NVR_CMD) SELECT @NVR_DBNAME=DBNAME,@NVR_TABLENAME=MIN(T.[NAME]) FROM
    (
    SELECT DB_NAME() AS DBNAME,A.[NAME] 
    FROM SYSOBJECTS AS A inner join SYSINDEXES AS B  
    ON  A.ID=B.ID AND A.XTYPE='U' AND B.INDID<2  
    ) AS T WHERE [name]>@NVR_TABLENAME GROUP BY DBNAME  
    END4.从链接服务器导入.DECLARE @NVR_CMD NVARCHAR(4000)
    DECLARE @NVR_TABLENAME NVARCHAR(128)
    DECLARE @NVR_DBNAME NVARCHAR(128)SELECT @NVR_DBNAME=DBNAME,@NVR_TABLENAME=MIN(T.[NAME]) FROM
    (
    SELECT DB_NAME() AS DBNAME,A.[NAME] 
    FROM SYSOBJECTS AS A inner join SYSINDEXES AS B  
    ON  A.ID=B.ID AND A.XTYPE='U' AND B.INDID<2  
    ) AS T GROUP BY DBNAMEWHILE NOT @NVR_TABLENAME IS NULL BEGIN SET @NVR_CMD='
    INSERT INTO ' + @NVR_TABLENAME + '
    SELECT * FROM 链接服务器名.' + @NVR_DBNAME + '.DBO.' + @NVR_TABLENAME  EXECUTE(@NVR_CMD) SELECT @NVR_DBNAME=DBNAME,@NVR_TABLENAME=MIN(T.[NAME]) FROM
    (
    SELECT DB_NAME() AS DBNAME,A.[NAME] 
    FROM SYSOBJECTS AS A inner join SYSINDEXES AS B  
    ON  A.ID=B.ID AND A.XTYPE='U' AND B.INDID<2  
    ) AS T WHERE [name]>@NVR_TABLENAME GROUP BY DBNAME  
    END
    注意:上面的脚本没有调过.你可以先测试一下.