创建sql语句的实用程序

发布于 2024-11-05 13:35:13 字数 207 浏览 5 评论 0原文

这是一个关于Sql生成的问题,而不是sql创建sql或ORM的问题。

他们是否有任何跨数据库工具可以创建插入语句,例如针对特定模式或命名空间中的所有表。假设命名空间/架构是 Sql Server 2008 中的 Aqua,您的实用程序就会出现并为该命名空间/架构生成所有可能的插入语句。它适用于 Oracle/MySql/Postgres/db2 等。

谢谢。 鲍勃

This is a question about Sql generation, not sql creating sql nor ORM.

Is their any cross database tools that will enable the creation of insert statements, e.g. for all the tables in particular schema or namespace. Say the namespace/schema is Aqua in Sql Server 2008, and your utility comes along and generates all possible insert statements for that namespace/schema. And it works on Oracle/MySql/Postgres/db2 etc.

Thanks.
Bob

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

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

发布评论

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

评论(1

枯叶蝶 2024-11-12 13:35:13

ANSI SQL 在 INFORMATION_SCHEMA 模式下提供了一组标准视图,以为此目的提供元数据。

为了生成简单的表插入语句模板,为给定表生成插入语句真正需要的所有信息是执行此查询:

select *
from INFORMATION_SCHEMA.COLUMNS
where TABLE_CATALOG = <my-db-name>
  and TABLE_SCHEMA  = <table-owner-schema>
  and TABLE_NAME    = <table-name>
order by ORDINAL_POSITION

在任何支持 ANSI 信息模式视图的数据库中。这将以预期的顺序为指定表中的每一列提供一行。

除此之外,由于没有两个供应商支持带有元数据的系统表集,因此您几乎是跨数据库解决方案的 SOL。遗憾的是,我不相信 Oracle 支持 ANSI 信息模式视图。

尽管您可能会查看 Red Gate 的产品系列:http://www.red-gate.com/

ANSI SQL provides for a standard set of views under the schema INFORMATION_SCHEMA to provide metadata for just this purpose.

For generating simple table insert statement templates, all the information you really need to generate an insert statement for a given table is to execute this query:

select *
from INFORMATION_SCHEMA.COLUMNS
where TABLE_CATALOG = <my-db-name>
  and TABLE_SCHEMA  = <table-owner-schema>
  and TABLE_NAME    = <table-name>
order by ORDINAL_POSITION

in any database that supports the ANSI information schema views. That will give you one row for every column in the specified table, in the expected sequence.

Outside of the above, since no two vendors support the set of system tables with metadata, your pretty much SOL for a cross-database solution. And sadly, I don't believe the Oracle supports the ANSI information schema views.

Though you might look at Red Gate's product family: http://www.red-gate.com/

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