创建一个没有列的表

Posted

技术标签:

【中文标题】创建一个没有列的表【英文标题】:Create a table without columns 【发布时间】:2010-03-13 12:35:33 【问题描述】:

我可以通过 t-sql 在 SQL Server 中创建一个没有任何列的表吗?

【问题讨论】:

为什么需要它?您可以创建没有 from 子句的 select 语句。 @Andrew Bezzub:因为,我想首先创建一个表,然后将列添加到表中。我知道,没有 from 子句就不可能选择。为了解决我的任务,我可以添加一些列,然后将其删除。 与其创建一个空的占位符表,不如等知道第一列是什么后再创建表吗? It would be possible in PostgreSQL 【参考方案1】:

表是列和行的集合。您至少需要一列。

【讨论】:

更准确地说:“表是至少一列至少零行的集合” 在 postgresql 中,您确实可以 创建没有列的表。但不要问我为什么。 此 SQL Server 2005 错误消息似乎支持这一点:CREATE TABLE NoColumns (doomed INT) ALTER TABLE NoColumns DROP COLUMN doomed -- "ALTER TABLE DROP COLUMN failed because 'doomed' is the only data表'NoColumns'中的列。一个表必须至少有一个数据列。悲伤但(显然)是真的。 . . @codymanix:无列表用于partitioning。 @codymanix 还有用例,当你有动态列的表时,当你没有表中的列时是可能的。这是我遇到的xD【参考方案2】:

没有。你会用它做什么?

【讨论】:

例如,假设您的代码会在表中创建任何缺失的列,并且您还想处理表本身缺失的情况。如有必要,能够创建表然后调用代码来创建任何缺失的列会更简洁。 比如说,您想将一个表中的所有列和行复制到一个新表中,而不必重新创建旧表的列和行数据

以上是关于创建一个没有列的表的主要内容,如果未能解决你的问题,请参考以下文章

Postgresql 如何创建一个有N个列的表

查询时返回带有列的表名

如何为超过 3000 万行和 250 列的表优化 Oracle 创建表功能

如何创建具有 json 数据类型列的表

创建具有记录类型列的表

如何创建包含时间戳列的表视图?