我在sql2005数据库中表新建表脚本,可是在sql2000数据库中却不能应用,总是提示有语法错误,为什么呢?如何才能使用呢?

解决方案 »

  1.   

    sql2005新的函数等不能在sql2000下使用的
      

  2.   

     胡百敬: 迁移过程中发现了很多问题,致使迁移任务不能顺利的完成。2000和2005还是有很多不同之处的。   
        1.在2000的用户自定义函数中,不能使用“非确定性的函数”,比如getdate()。   
        解决方案,可以在函数调用之初,就将getdate()作为参数传过去。   
        2.系统对象的前缀有所不同。2000的前缀是dbo;而2005的前缀是sys。   
        3.2000存储过程调用函数参数传递时必须传直接变量或常量。所以不能使用getdate(),或case   when   之类的语句。解决方案,     可以在函数调用之初,将getdate()/case   when   的值赋值给一个变量,再传过去。   
        4.select   top   x语句,x不能为变量,且x不能加括号。   
        5.insert   into   exec   (@param1)语法再2000中不能编译通过,应改exec   ('insert   into'+@param1) 
      

  3.   

       sql   server   2005迁移至sqlserver2000   迁移过程中发现了很多问题,致使迁移任务不能顺利的完成。2000和2005还是有很多不同之处的。       
            1.在2000的用户自定义函数中,不能使用“非确定性的函数”,比如getdate()。       
            解决方案,可以在函数调用之初,就将getdate()作为参数传过去。       
            2.系统对象的前缀有所不同。2000的前缀是dbo;而2005的前缀是sys。       
            3.2000存储过程调用函数参数传递时必须传直接变量或常量。所以不能使用getdate(),或case       when       之类的语句。解决方案,           可以在函数调用之初,将getdate()/case       when       的值赋值给一个变量,再传过去。       
            4.select       top       x语句,x不能为变量,且x不能加括号。       
            5.insert       into       exec       (@param1)语法再2000中不能编译通过,应改exec       ('insert       into'+@param1)   
      

  4.   

    在生成的选项中 : 为服务器版本编写脚本 -- SQL SERVER 2000
      

  5.   

    放过来搞有点麻烦,只能找到一些不需要的东西删除之.然后运行.最好把SQL变成标准的SQL语句.