由于自己开发环境使用的是MS SQLServer 2005,而服务器上部署的依然是MS SQLServer 2000,于是在系统开发完成后,还得将MS SQLServer 2005导入 MS SQLServer 2000,虽然同是MS家族的产品,导入导出也算方便,但是有时候也会出现问题,比喻说这样操作:
1、在SQL Server Management Studio中,选择数据,生成脚本
2、选择下一步,然后在“为服务器版本编写脚本”选择SQL Server 2000
3、下一步选择要生成的表或者视图,最后完成,然后将生成的脚本复制到SQL Server 2000下执行。
从上面的流程来看,并没有什么问题,但是在执行的过程中却无法执行,需要将脚本中做如下调整:
找到"WITH (IGNORE_DUP_KEY = OFF) ON "这一句,用全部替代为空
找到"sys.objects",用全部替代为"sysobjects"
找到"sys.views",用全部替代为"sysobjects"
找到"object_id",用全部替代为"id"[注:这里的object_id要区分大小写]
找到"sys.sp_addextendedproperty",用全部替代为"dbo.sp_addextendedproperty"或是"sp_addextendedproperty"
找到"EXEC sys.sp_addextendedproperty @name=N''XXX'', @value=N''XXX'' , @level0type=N''SCHEMA'', @level0name=N''XXX'', @level1type=N''XXX'', @level1name =N''XXX''"这一句,将@level0type=N''SCHEMA''改成@level0type=N''user'',再把@name=,@value =,@level0type=,@level0name=,@level1type=,@level1name=全部替代为空
如果在生成脚本的时候,将“为所选数据库中的所有对象编写脚本”选中,其他步骤一切照旧,则可以生成完全正常的脚本,不需要修改任何地方。
转自:http://www.cnblogs.com/asyoungyu/