0
是否有确定给定关系是否为table
或view
的命令?从视图中区分表的命令
我使用的试验和错误的方法做:
SHOW CREATE VIEW table_name
如果它是一个table
,而不是一个view
,我的数据库软件(普雷斯托在DBeaver)会给我一个错误:
Relation
table_name
is atable
, not aview
我认为这个错误来自一个类似的命令在内部运行来审查我的查询。如果它是view
,则命令当然有用。
如果您使用的是SHOW CREATE ..,那么您的**是针对特定的数据库引擎 - 这是非标准的SQL –
查询元数据的标准方法是[信息模式](https:// en.wikipedia.org/wiki/Information_schema)。 *你的*数据库系统是否实现它我不能说。另外,请注意,尽可能多地,你*不应该区分表和视图。您应该能够用视图替换表格(反之亦然),而不是使现有代码无效。 –