SQL表是否可能具有零列?

前端之家收集整理的这篇文章主要介绍了SQL表是否可能具有零列?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用以下查询来收集有关表的列的信息:
SELECT COLUMN_NAME,ORDINAL_POSITION,DATA_TYPE,CHARACTER_MAXIMUM_LENGTH,Is_NULLABLE
    FROM INFORMATION_SCHEMA.COLUMNS
    WHERE TABLE_NAME = 'TableName'
    ORDER BY ORDINAL_POSITION

如果此查询返回零结果,我可以安全地声明该表不存在吗?或者是某种可能的表存在但是(反过来)没有列?

我已经查询了INFORMATION_SCHEMA.TABLES以查明表是否存在,但如果可能的话我想将其剪切为一个查询.

为了将来参考,我发现了以下相关问题:
Create a table without columns
Can I select 0 columns in SQL Server?

解决方法

如果你试试:
create table TestTable (id int)
alter table TestTable drop column id

sql Server抱怨说:

Msg 4923,Level 16,State 1,Line 1
ALTER TABLE DROP COLUMN Failed because 'id' is the only data column in table
'TestTable'. A table must have at least one data column.

因此,表必须始终至少有一列.

猜你在找的MsSQL相关文章