使用用户定义类型 - 定义 UDT 表和列
适用于:SQL Server
在Microsoft SQL Server 数据库中注册包含用户定义类型(UDT)定义的程序集后,就可以在列定义中使用。 有关详细信息,请参阅 CREATE TYPE (Transact-SQL)。
使用 UDT 创建表
没有用于在表中创建 UDT 列的特殊语法。 可以在列定义中使用 UDT 的名称,就好像它是内部 SQL Server 数据类型之一。 以下 CREATE TABLE Transact-SQL 语句创建一个名为 Points 的表,其中包含名为 ID 的列, 该列定义为 int 标识列和表的主键。 第二列名为 PointValue,数据类型为 Point。 此示例中使用的架构名称是 dbo。 请注意,您必须具有指定架构名称所需的权限。 如果省略架构名称,将使用数据库用户的默认架构。
CREATE TABLE dbo.Points
(ID int IDENTITY(1,1) PRIMARY KEY, PointValue Point)
对 UDT 列创建索引
有两个用于为 UDT 列编制索引的选项:
为整个值编制索引。 在这种情况下,如果 UDT 是二进制排序的,则可以使用 CREATE INDEX Transact-SQL 语句在整个 UDT 列上创建索引。
对 UDT 表达式编制索引。 您可以对 UDT 表达式在持久计算列上创建索引。 该 UDT 表达式可以是 UDT 的某一字段、方法或属性。 该表达式必须是确定性的并且不得执行数据访问。
有关详细信息,请参阅 CREATE INDEX (Transact-SQL)。
另请参阅
使用 SQL Server 中的用户定义类型
CREATE TYPE (Transact-SQL)
CLR 用户定义类型
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈