问题标签 [sql-generation]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
6155 浏览

entity-framework - 实体框架 6:如何覆盖 SQL 生成器?

根据 Entity Framework team 的建议,我想修改 EF:CF 在生成数据库模式 (DDL) 时生成的 SQL 。

如何才能做到这一点?

我无法通过谷歌找到任何合适的东西。

0 投票
0 回答
780 浏览

oracle11g - 如何在离线模式下使用 Liquibase 3.3 为 Oracle 11g 生成 SQL?

问题

我使用描述我的数据库对象结构的 YAML 脚本。这非常方便,因为我可以使用 H2 进行基于 DB 的集成测试。

但是我的客户的生产服务要求我们提供面向 Oracle 的 SQL 脚本(他们使用 Liquibase,但以非标准方式,我们无法挑战/更改)。

因此,我想以自动方式从我的 YAML 脚本生成这些 Oracle SQL 脚本。

想法

我首先找到了Liquibase:updateSQL 命令。问题是我无权访问数据库(我不知道 JDBC URL,我也不在同一个网络上)。所以这个解决方案是行不通的。

然后,我在 Liquibase 中发现了一个新选项,它允许updateSQL 命令的“离线”模式。这似乎确实是我正在寻找的解决方案,但随后出现以下错误(使用 Maven 和 -X -e 选项):

然后我重新尝试离线 H2 基地,但我有一个新的错误:

所以我的问题是:

  1. Liquibase:updateSQL 在您看来是正确的解决方案吗?
  2. 您是否成功在 Oracle 的离线模式下执行 Liquibase:updateSQL 命令?(如何 ?)

感谢您到目前为止的阅读

0 投票
1 回答
597 浏览

java - JOOQ:为以字符串命名的表生成更新 SQL

我只想使用 JOOQ 生成 SQL 而不验证表、列等,并且不为所述表、列等生成类。

如何生成 SQL 更新,只需用Strings 指定模式和表的名称?

也许稍后我会设置表格生成的 Java 代码,但现在没有必要。如果没有这样的生成代码我不能使用 JOOQ,那么我现在将使用其他一些库。

谢谢。

0 投票
1 回答
58 浏览

sql-server - 未选择 高级选项

截屏 在此处输入图像描述

错误:未选择高级 SQL 生成选项

如何选择此选项 请检查屏幕截图

0 投票
1 回答
327 浏览

c# - 在数据访问代码(例如 Dapper)中最小化/管理 SQL 字符串 blob 的最佳实践

我非常高兴地使用 Dapper 构建了一些数据层。当然,维护所需的 SQL 字符串可能是一个问题,尤其是当 db 架构发生更改(重命名列等)时。

我正在寻找一种“删除”大多数 SQL 字符串 blob(不使用 EF 或 Linq)的策略。要么找到/构建一个类型安全的查询 API 来生成 SQL(如 jooq),要么想到某种元生成。

我错过了什么吗?是否有最佳实践或更好的方法?

谢谢

注意:使用 EF 或 Linq 可以解决问题,但我们正在努力尽可能接近 SQL。

0 投票
1 回答
4591 浏览

entity-framework - 实体框架 6:迁移删除列(如果存在)

在删除列的迁移操作期间,如何在尝试删除列之前生成 SQL 来检查列的存在?

对于删除列操作,实体框架当前会生成这样的 sql 来删除列:

如何更改 SQL 以首先检查列的存在:

我知道可以通过继承来自定义迁移 SQL SqlServerMigrationSqlGenerator。我这样做的尝试未能将默认的删除列逻辑包装在一个IF块中。请参见下面的示例:

资料来源:

0 投票
1 回答
71 浏览

c# - 实体框架 6 分组和聚合时的不良 SQL 生成和性能

我有一个案例,我不能让 Entity Framework 为我构建好的和快速的 sql。

我的情况是我有三个实体。商店、销售和销售热线。Sale 持有交易日期时间,而 salesline 持有数量、价格等。

我想建立一个报告,显示每家商店和每天的一些汇总数据(剥离时间)

这是我所做的:

这导致以下 SQL 需要大约 20 秒才能执行。

如果我在手边构建 SQL,我会这样做,它会在不到 1 秒的时间内执行。

我的问题是如何设计我的实体框架查询,以便生成更干净、更快速的 SQL。

我知道可以直接查询数据库,但我希望类型安全并使用引擎。

我在网上搜索了很多,但找不到符合这种情况的案例。

我希望得到帮助!

0 投票
0 回答
115 浏览

c# - EF Core 将实体映射到模型

我正在尝试有效地将实体映射到模型上。

我的实体是:

我的模型是:

(在实践中,这些类之间会有差异,但这里不是为了简化。)

我写了一个扩展方法来做映射:

是为了ToLower()突出问题。

我可以运行它:

生成的 SQL 为:

即小写处理在数据库中完成。

到目前为止一切都很好,除了关注点分离不好。初始化 a 的代码与初始化 a 的代码ChildModel在同一个地方ParentModel

我尝试在以下位置使用构造函数ChildModel

并在扩展方法中:

这可行,但生成的 SQL 不包含lower. 小写转换是在程序中完成的。

有什么办法可以让我吃蛋糕吗?

我是否仍可以将我的 C# 代码转换为 SQL,但仍以模块化方式构建我的 C# 代码?

0 投票
0 回答
29 浏览

sql - 从 JSON 格式的查询条件生成 SQL 查询

我收到 JSON 格式的查询条件,如下所示: 在此处输入图像描述

我想从 JSON 中指定的条件生成 ANSI SQL 查询。是否有任何标准方法或库可以做到这一点?