我看到过一些CSDN 里面关于一些转换的问题!但是我没看懂。我这台机器上只有2000的数据库! 谁能帮我把这个sql05的转换一下!最好是省事的那种 。要不我就得一个一个的写。

解决方案 »

  1.   

    用sql的导入导出功能
    楼主可以试试~~
      

  2.   

    SQL2000附加SQL2005数据具体方法
    如题,若使用SQL2000附加SQL2005的数据库时在附加时会出现了错误602,提示“对sysindexes运行DBCC CHECKTABLE”因为数据库附加到2005的时候, 数据库文件已经自动升级到2005, 所以在2000下是无法再附加的(没有向上兼容的)直接restore或附加是不行的, 用脚本+导数据肯定没有问题。
    2005转到2000的步骤步骤
    1. 生成for 2000版本的数据库脚本
    2005 的manger studio
    -- 打开"对象资源管理器"(没有的话按F8), 连接到你的实例
    -- 右键要转到2000的库
    -- 任务
    -- 生成脚本
    -- 在"脚本向导"的"选择数据库"中, 确定选择的是要转到2000的库
    -- 勾选"为所选数据库中的所有对象编写脚本"
    -- 在接下来的"选择脚本选项"中, 找到"为服务器版本编写脚本"项, 选择"SQL Server 2000"
    -- 其他选项根据需要设置
    -- 最后把脚本保存到一个 .sql 脚本文件2. 在2000中创建目标数据库
    在查询分析器(或2005的manger studio在打开脚本文件), 连接到SQL Server 2000,执行上面生成的脚本.以创建一个新的数据库3. 将数据从2005导到2000
    2005 的manger studio
    -- 打开"对象资源管理器"(没有的话按F8), 连接到你的实例
    -- 右键要转到2000的库
    -- 任务
    -- 导出数据
    -- 在"SQL Server 导入和导出向导"的"选择数据源"步骤中, 确定选择的是要导出的数  据库
    -- 在"选择目标"步骤中, 连接到 2000, 并选择步骤2新建的库
    -- 在"选择源表和源视图"中, 选择所有的表
    -- 最后完成 
     
      

  3.   

    我用上面的方法有错,2005生成的代码是
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[BackNumber]') AND type in (N'U'))
    BEGIN
    CREATE TABLE [dbo].[BackNumber](
    [back_ID] [int] NOT NULL,
    [back_CardId] [varchar](10) NOT NULL,
    [back_RegDate] [datetime] NULL,
    [back_Date] [datetime] NULL,
    [back_machineId] [int] NOT NULL
    ) ON [PRIMARY]
    END要把sys.objects改成dbo.sysobjects,把object_id改成id,如果表少可以改,但是表很多,关系也多的时候就很麻烦了。请高手赐教!