如何更改自定义数据类型的所有者,我所知道的是更改系统表SYSTYPES里面的列UID的值,
总觉得这样不太好,
1、我用上面的方法做,是否有不妥当之处,如果有,请告诉我吧!
2、SQL SERVER 2000 有没有提供系统存储过程,进行这一操作。

解决方案 »

  1.   

    sp_changeobjectowner此系统存储过程可以修改了默认值的拥有者,但无法修改自定义数据类型的拥有者
      

  2.   

    企业管理器-->数据库-->默认值-->新建
    取名qqq 值right(replace(convert(varchar(20),getdate(),120),'-',''),8)
    确定到查询分析器
    EXEC sp_changeobjectowner 'qqq', 'dcadmin'
    go然后查看默认值,修改所有者成'dcadmin',OK但同样的方法用在自定义数据类型上,
    就说"对象 'qqqqq' 不存在或不是对此操作有效的对象。"
    请高手指点
      

  3.   

    暂时没有找到标准的修改方式, 包括sql 2005中
      

  4.   

    联机帮助上有这样的描述:
    若要修改用户定义类型,必须使用 DROP TYPE 语句除去该类型,然后重新创建它我想, 这个应该也包括不能修改所有者吧(2005中叫架构)