我在 SQL Server 中有一个表。我想使用用户定义的表类型(示例here)将行批量上传到此表中。为此,我需要创建一个与目标表格式相同的用户定义表类型。
有没有简单的方法可以做到这一点,或者我必须手动复制所有列信息?
换句话说,我正在寻找这个问题的反面(根据用户定义的类型创建 SQL Server 表)。
我想转这个:
CREATE TABLE [dbo].[MyTable]
(
AAA [int] NOT NULL,
BBB [varchar](50) NOT NULL,
CCC [datetime] NOT NULL
)
Run Code Online (Sandbox Code Playgroud)
进入这个:
CREATE TYPE [dbo].[udtMyTable]
AS TABLE
(
AAA [int] NOT NULL,
BBB [varchar](50) NOT NULL,
CCC [datetime] NOT NULL
)
Run Code Online (Sandbox Code Playgroud)
仅进行文本替换是否安全?
假设我有一个用户定义的类型:
CREATE OR REPLACE TYPE TEST_TYPE AS OBJECT
(
f1 varchar2(10),
f2 number(5)
);
Run Code Online (Sandbox Code Playgroud)
现在,我想创建一个表来保存这些类型.我可以做以下事情:
create table test_type_table (
test_type_field test_type
);
Run Code Online (Sandbox Code Playgroud)
这给了我一个包含一列的表格test_type_field.
是否有一种简单而自动的方式来创建一个表,使其具有2列,f1并且f2?所以它是写作的等价物:
create table test_type_table (
f1 varchar2(10),
f2 number(5)
);
Run Code Online (Sandbox Code Playgroud)