En lugar de buscar en sys.objects
para estos debe buscar en sys.types
o sys.table_types
(que además expone el type_table_object_id
).
SELECT name,
schema_id /*Will be the "test" schema id*/
FROM sys.types
WHERE is_table_type = 1
AND name = 'MyUserTableType'
Cuando crea un tipo definido por el usuario, agrega una fila a sys.sysscalartypes
con el esquema y el nombre proporcionados por el usuario y una fila para sys.sysschobjs
con un nombre generado por el sistema en sys
esquema. El nombre generado por el sistema se crea concatenando TT_
+ NombreAmistoso + _
+ Versión hexadecimal de la identificación del objeto.
Las dos entidades están relacionadas a través de sys.syssingleobjrefs
/*This query only works via the DAC*/
SELECT so.id AS object_id,
st.id AS user_type_id,
*
FROM sys.sysschobjs so
JOIN sys.syssingleobjrefs sor
ON sor.indepid = so.id
JOIN sys.sysscalartypes st
ON st.id = sor.depid
WHERE st.name = 'MyUserTableType'