更新时间:2022-11-24 17:51:05
类型和 UDT 不会出现在 sys.objects 中.您应该能够通过以下方式获得所需内容:
select * from sys.types其中 is_user_defined = 1
I need to enumerate all the user defined types created in a SQL Server
database with CREATE TYPE
, and/or find out whether they have already been defined.
With tables or stored procedures I'd do something like this:
if exists (select * from dbo.sysobjects where name='foobar' and xtype='U')
drop table foobar
However I can't find the equivalent (or a suitable alternative) for user defined types! I definitely can't see them anywhere in sysobjects
.
Can anyone enlighten me?
Types and UDTs don't appear in sys.objects. You should be able to get what you're looking for with the following:
select * from sys.types
where is_user_defined = 1