加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sql-server – 在sql server中,sys.types中的user_type_id和syst

发布时间:2020-12-12 08:46:29 所属栏目:MsSql教程 来源:网络整理
导读:sql server中sys.types视图中user_type_id和system_type_id有什么区别? 我想用sys.types来内部连接sys.columns来获取用户表中的列的数据类型,但是这两个视图都有两个字段user_type_id和system_type_id,应该使用哪一个? 解决方法 你几乎不想加入sys.columns.
sql server中sys.types视图中user_type_id和system_type_id有什么区别?

我想用sys.types来内部连接sys.columns来获取用户表中的列的数据类型,但是这两个视图都有两个字段user_type_id和system_type_id,应该使用哪一个?

解决方法

你几乎不想加入sys.columns.system_type_id = sys.types.system_type_id.在用户定义类型的情况下,这将导致 duplicate records.

有两个有意义的JOIN.它们都是内置类型的工作.

> sys.columns.user_type_id = sys.types.user_type_id

对于内置类型,它返回内置类型.

对于用户定义的类型,它返回用户定义的类型.
> sys.columns.system_type_id = sys.types.user_type_id

对于内置类型,它返回内置的基本类型.这可能是有意义的,例如,如果要获取所有varchar列,包括基于varchar的所有用户定义的列.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读