InterSystems 缓存 SQL。检查表是否存在

发布于 2024-12-13 12:05:30 字数 66 浏览 0 评论 0原文

我可以使用什么 SQL 查询来检查表是否存在。

我需要支持不同版本的架构,并且某些部署可能会丢失某些表

What SQL query can I use to check if a table exists.

I need to support different versions of schema, and some deployments can miss certain tables

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

∞梦里开花 2024-12-20 12:05:30

如果它们是缓存表,您可以使用%Dictionary.CompiledClass系统表。

select id from %Dictionary.CompiledClass where SqlSchemaName='%BI' and SqlTableName='Alerts'

或者,如果您知道表的缓存类名称,

select id from %Dictionary.CompiledClass where ID='%BI.Alerts'

如果表 %BI.Alerts 存在,这些查询将返回 1 行。

If they are Cache tables, you may use the %Dictionary.CompiledClass system table.

select id from %Dictionary.CompiledClass where SqlSchemaName='%BI' and SqlTableName='Alerts'

Or, if you know Cache class name of your table,

select id from %Dictionary.CompiledClass where ID='%BI.Alerts'

These queries will return 1 row if table %BI.Alerts exists.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文