您好,我是小DAI,专注于数据库管理员相关的技术问答,请问有什么可以帮您?

sp_dropobjectdef

语法


sp_dropobjectdef <tablename>

参数

<tablename>

格式为 <dbname>.<owner>.<object>,其中:

  • <dbname>(可选)是数据库的名称,该数据库包含您要删除其存储位置的对象。如果存在,它必须是当前数据库,并且需要有 <owner> 或占位符。

  • <owner> 是您要删除其存储位置的对象的所有者的名称。<owner> 是可选的;如果指定了 <dbname>,则该项是必需的。

  • <object> 是要为其删除外部存储映射的本地表的名称。

    示例

    示例 1

    从 sysattributes 中删除为服务器已知的表(personnel 数据库中的 colleges 表)提供外部存储映射的条目:

    
    sp_dropobjectdef "personnel.dbo.colleges"
    

    示例 2

    从 sysattributes 中删除为 andrea.fishbone 对象提供外部存储映射的条目,其中 andrea 是 owner,本地表名是 fishbone:

    
    sp_dropobjectdef "andrea.fishbone"
    

    用法

    使用 sp_dropobjectdef 时,还存在一些其它注意事项:

  • sp_dropobjectdef 删除为本地对象提供的外部存储映射。它替换了 sp_droptabledef。

  • 在用 drop table 删除了远程表之后,请使用 sp_dropobjectdef 。

  • 如果映射信息是使用 sp_addobjectdef 添加的,则删除表不会从 sysattributes 表中删除映射信息。必须使用 sp_dropobjectdef 显式删除这些映射信息。

  • <tablename> 可以是以下任一形式:

    
    </li></ul><ul><li><object>
    
    </li></ul><ul><li><owner>.<object>
    
    </li></ul><ul><li><dbname>..<object>
    
    </li></ul><ul><li><dbname>.<owner>.<object>