当前位置: 首页 > 面试题库 >

根据用户定义的类型创建SQL Server表

汝飞
2023-03-14
问题内容

我有创建的定义的表类型

CREATE TYPE dbo.MyTableType AS TABLE
(
    Name      varchar(10) NOT NULL,
    ValueDate date        NOT NULL,
    TenorSize smallint    NOT NULL,
    TenorUnit char(1)     NOT NULL,
    Rate      float       NOT NULL
    PRIMARY KEY (Name, ValueDate, TenorSize, TenorUnit)
);

我想创建这种类型的表。从这个答案的建议是尝试

CREATE TABLE dbo.MyNewTable AS dbo.MyTableType

在我的SQL Server Express 2012中产生了以下错误消息:

关键字“ OF”附近的语法不正确。

SQL Server Express不支持此功能吗?如果是这样,我可以用其他方式创建它,例如使用DECLARE吗?


问题答案:

–Create table variable from type.
DECLARE @Table AS dbo.MyTableType

--Create new permanent/physical table by selecting into from the temp table.
SELECT *
INTO dbo.NewTable
FROM @Table
WHERE 1 = 2

--Verify table exists and review structure.
SELECT *
FROM dbo.NewTable


 类似资料:
  • 问题内容: 假设我有一个用户定义的类型: 现在,我想创建一个表来保存这些类型。我可以执行以下操作: 这给了我一张只有一列的表格test_type_field。 有没有一种简单而自动化的方法来代替,以创建一个表,使其具有2列f1和f2?。这样就等同于编写: 问题答案: 你有没有尝试过:

  • 我对卡桑德拉的数据建模有一个疑问,希望能在这里提出一些建议。 我们正在尝试构建一个多租户应用程序,我们希望数据结构由用户定义。用户可以定义数据源、字段数量、数据类型、顺序等,然后基于此结构上载数据。既然Cassandra不支持混合数据类型列表,我们如何在Cassandra之上设计这样的应用程序呢。当前集合类型为映射(相同类型)/集/列表(相同类型)。此外,是否可以基于用户定义的实体查询数据? 目前

  • 问题内容: 假设我有某种类型: 现在我想基于这种类型创建一个临时表,我该怎么做? 同样,从此:基于用户定义的类型创建表: 问题答案: [\Pure.Krome的答案)显示了如何使用表变量而不是#temp表。如果您确实想要基于已知表类型的#temp表(而不必知道列名/定义),则可以说: 现在,应与表类型的表结构匹配,减去约束(以及从SQL Server 2014开始的边际有用的二级索引)。 当然,随

  • 该到你发挥创意的时间了。你已经知道了各种不同的 Puppet 资源类型: 包(package), 文件(file)、用户(user),等等。 通常情况下,你既可以组合使用这些内置资源类型做你需要做的一切, 又可以通过一个自定义 define 作为一种资源(以内置资源同样的方式)来使用 (参见第 4 章 书写更优质的配置清单 中有关 define 的内容)。 但是,如果你需要创建自己的资源类型,Pu

  • 仅当选定的用户类型为“外部”时,我才需要显示重置密码按钮,如果用户用户类型为“员工”,则隐藏重置密码按钮。 使用 EL 表达式 #{!绑定.role.inputValue=='Employee'} 来隐藏此按钮,绑定.role.inputValue 值本身为空,我是否缺少有关绑定的任何内容,或者是否需要使用自定义托管 Bean 实现? 谢谢

  • 问题内容: 我想获取一个传递的列表,该列表我知道是同构的,并从中创建一个与其中的元素类型相同的数组。 就像是… 问题答案: 转换将在运行时发生,而类型在编译时丢失。因此,您应该执行以下操作: 但是请注意,上面的第三行可能会引发异常-它不是类型安全的。