zoukankan      html  css  js  c++  java
  • 2005数据库脚本在SQL2000上执行

      在SQL2005上生成一个creat数据库脚本文件,然后在SQL2000上执行的时候,出现问题:“未能找到存储过程 'sys.sp_addextendedproperty'。”解决办法:

       1、将脚本放在2005平台执行;

       2、在2005环境生成脚本时修改配置:工具/选项/编写脚本/为服务器版本编写脚本/选择SQL Server 2000。这样生成的脚本,在2000下执行就峨没问题了。

    分析:由于SQL2005的系统表与 SQL2000的系统表名是有所不同的、sp_addextendedproperty执行时是不需加上"参数=",为了日后学习或是查询方便,记之:

    1.找到"WITH (IGNORE_DUP_KEY = OFF) ON "这一句,用全部替代为空
    2.找到"sys.objects",用全部替代为"sysobjects"
    3.找到"sys.views",用全部替代为"sysobjects"
    4.找到"object_id",用全部替代为"id"[注:这里的object_id要区分大小写]
    5.找到"sys.sp_addextendedproperty",用全部替代为"dbo.sp_addextendedproperty"或是"sp_addextendedproperty"
    6.找到"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=全部替代为空


        在generate script向导下,在select database下有个选项script all object.....,如果此时勾选了,在下面出现的设置窗口里选择script version为sql server 2000,则生成的脚本在2000里运行完全正常。但如果不选这个,而是在后面选择table时勾选select all,然后在script version再选择sql server 2000,则生成的还是2005的脚本......这两种方式生成的脚本应该是一样的吧。

    我一直用第二种方法来生成,难怪在2000一直运行不了。

  • 相关阅读:
    Web前端工程师技能列表
    CSS框架的相关汇总(CSS Frameworks)
    一个有趣的发现
    (转丁学)Firefox2的一个bug和脑子进了水的IE
    深入语义:列表Tag(ul/ol)和表格Tag(table)的抉择
    css命名简单框架
    腾讯的三栏布局考题
    土豆网前端概况
    伪绝对定位(译)
    右下角浮动广告代码DEMO
  • 原文地址:https://www.cnblogs.com/Byrd/p/2540407.html
Copyright © 2011-2022 走看看