可以通过以下 SQL 代码来实现包含 UDT 数组的 UDT 数组插入查询:
-- 定义外层 UDT 类型 CREATE TYPE OuterUDT AS ( inner_array InnerUDT[] );
-- 定义内层 UDT 类型 CREATE TYPE InnerUDT AS ( name VARCHAR(50), age INT );
-- 定义表格 CREATE TABLE MyTable ( id INT IDENTITY(1,1) PRIMARY KEY, outer_column OuterUDT );
-- 插入数据 INSERT INTO MyTable (outer_column) VALUES ( ( -- 外层 UDT 数组 INNER_ARRAY = ( -- 内层 UDT 数组 ('Anna', 26), ('Bob', 32) ) ) );
以上代码中,我们首先定义了包含内层 UDT 数组的外层 UDT 类型 OuterUDT 和内层 UDT 类型 InnerUDT。然后,我们创建表格 MyTable,并在表格中的列 outer_column 中插入了包含 UDT 数组的 UDT 数组。最后,我们使用 INSERT INTO 语句将数据插入表格中。
注意,当插入 UDT 数组时,必须按照内层 UDT 类型的定义顺序来指定值。在上面的示例中,我们以字符串和整数的顺序指定了 InnerUDT 类型中的值。