>데이터 베이스 >MySQL 튜토리얼 >把MSSQL2005转换成MSSQL2000_MySQL

把MSSQL2005转换成MSSQL2000_MySQL

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB원래의
2016-06-01 13:45:35917검색

bitsCN.com

 

众所周知,mssql是不会向后兼容。

     要把SQL2005转换到sql2000。最大的问题是:要把用SQL2005特性实现的功能重新用SQL2000实现一遍。

     1.表的转换。

     不要用SQL2005自带的生成脚本工具转换,因为有个BUG。当你未选择“为所选数据库中的所有对象编写脚本”时,他的版本选择会出错,即使你在“为服务器版本编写脚本”中选择了SQL2000.他也会为SQL2005编写脚本。

     所以建议用Microsoft sql server database publishing wizard 工具,他使用更加方便。

     但是他有个缺点是,错误提示不够详细,所以可以两者结合使用。

     根据他的错误提示,把SQL2005里有些字段类型修改成符合SQL2000标准的。然后生成脚本在SQL2000里执行一遍。就可以了。(可以最好选择只转换表结构,数据下次导入)

    2.视图转换

     表转换成功后,这步很容易转换。

    3.函数转换

     在工具里,选择所有函数,生成脚本,在sql2000里执行后,把执行不成功的函数找出来,修改成符合sql2000标准的语句。

    4.存储过程转换

     同样,照第三步操作

    5.其他

    程序集、用C#实现的存储过程等这些sql2000没有的功能,只好用sql语句重新实现一遍。

    6.数据转换

    在某些情况下,用MSSQL2005自带数据导入,导入数据到sql2000会报错。而MSSQL database publishing wizard 工具也不能生成数据插入脚本。

    那么可以先用工具生成数据插入到MSSQL2005的脚本。然后在MSSQL2000里执行。一般情况下可以执行的。如果个别表报错,先把这些表的插入语句删除。再执行。

    至此,转换已经成功完成了。

    如果你MSSQL2005运用的sql2005特性越多,就会更加明白2005的优越性能。

    CTE,TRY_CATCH 语句,ouput子语句,error_message.....等等都是SQL2005后才具有的。。

本文出自 “wuxinjie” 博客

bitsCN.com
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
이전 기사:MySQL权限_MySQL다음 기사:MySQL调优_MySQL