问题标签 [sqlkata]
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.
c# - C# SqlKata 引擎更新查询似乎没有执行
我有一个 C# 函数,旨在对 SQL Server 2016 表执行更新。为此,我正在利用 SqlKata 引擎。
我可能正在做一些非常简单/愚蠢的事情,我觉得我正在构建查询,但没有执行它?该文档仅显示了 UPDATE 语句的以下内容:
我的更新稍微复杂一些,但本质上是相同的。我对某些属性使用动态对象,因此我强制 ToString 和 Convert.ToInt32 作为测试属性本身是否存在问题的一部分。日志记录表明这些值是正确的并且存在。
我觉得我需要以某种方式调用构造的查询,但我不清楚如何。我有一些执行 SELECT 语句的 SqlKata 代码,为了调用它,我使用
但我找不到任何关于类似调用的文档(沿着 query.Update 或类似的行?)为愚蠢的问题道歉。
作为参考,记录的输出没有显示任何执行迹象,表中的数据保持不变。
sqlkata - 如何使用 SqlKata 显示 SQL Server 数据库中的表?
我正在尝试使用 SqlKata 在我的 SQL Server 2017 中显示数据库中的表。
我浏览了一些研究。根据其中一篇文章,我需要编写此命令var books = db.Query("Books").Get();
我的问题是:我们将命令放在 C# .NETCoreApp 1.1 目标框架文件中的什么位置?以及如何运行以显示结果?
c# - 错误 CS0308 非泛型方法 'ICollection.Add(ServiceDescriptor)' 不能与 Startup.cs 中的类型参数一起使用
最近我正在使用 SqlKATA 查询生成器。我按照此处所述的步骤进行操作。在解决了一些错误后,当我的代码中没有红色下划线的情况时,我运行了我的解决方案。然后我收到错误 CS0308。当我尝试解决我的解决方案时,我评论了 Startup.cs 中的一个部分,我在 ConfigureServices 方法中找到它:
services.Add<QueryFactory>(() => {
var connection = new SqlConnection( "Data Source=serverName\serverInstance;Initial Catalog=databaseName;Integrated Security=True");
var compiler = new SqlServerCompiler();
return new QueryFactory(connection, compiler);
});
之后,它以我设置的显示文本顺利运行。但是当我取消注释该部分时,它再次向我显示了错误。
任何想法为什么?任何帮助将非常感激!
编辑:
var connection = new SqlConnection( "Data Source=serverName\\serverInstance;Initial Catalog=databaseName;Integrated Security=True");
c# - SqlKata 事务
我希望将 SqlKata 用于项目。但是,项目标准的一部分是查询应该能够作为事务执行。有没有办法可以使用 MSSQL 事务执行一个查询或多个查询?
非常感谢。
c# - SQLKata - Where 子句
我已经尝试使用 SqlKata 一段时间了,我真的很困惑如何让一个简单的 WHERE 子句起作用。
我一直这样做:
var sistemas = DatabaseHelper.factory.Query("tblSistema").Where("id_fornecedor", fornc.id);
它返回给我一个 XQuery,我不知道如何执行它。请注意,在末尾附加 First() 和 Get() 会引发异常。
'sistemas.Get()' threw an exception of type 'Microsoft.CSharp.RuntimeBinder.RuntimeBinderException'
我只是想SELECT * FROM tblSistema WHERE id_fornecedor=1
例如
c# - SqlKata - 如果 where 子句的一部分为空会发生什么?
我有一个 SQLKata 查询。它与普通 SQLKata 不同,因为一些同事有一个包装器。
我的问题是,如果jobs.PersonLinks
为空,是否conditionQuery
解析为空?
c# - 如何在Sqlkata中形成多个Join Conditions sql查询
我正在尝试使用 Sqlkata 构建 Sql Query。我能够为一个连接条件构建正确的 sql 查询,但是对于 And Condition 我面临问题
最终查询 -empDeptSqlKataQuery.Sql 是
我想在 join 子句中添加更多条件,如下所示。
我已经尝试过了,但没有得到我所期望的
使用上述方法的最终 Sql 查询:
请让我知道如何解决此问题
c# - 反序列化动态对象 JSON,Net
我有两个应用程序:第一个使用 SqlKata 从数据库中获取数据,然后使用 Newtonsoft 对其进行序列化并将其保存到文件中:
这工作正常,并使用其中的数据创建 json 文件
第二个应用程序读取 JSON 文件,对其进行反序列化,然后将其添加到数据库中,例如:
插入会引发异常:System.Reflection.TargetParameterCountException: 'Parameter Count Mismatch'
知道数据库表是一样的。
c# - SQLKata 动态 Where 子句
我正在使用SQLKata
在其中构建一个SQL
语句,C#
并在 Github 论坛上找到了一些代码,但它无法编译。我需要帮助才能编译它。
我在这条线上收到两个错误query.Where(q =>
编译错误(第 17 行,第 16 列):并非所有代码路径都返回“System.Func”类型的 lambda 表达式中的值
编译错误(第 17 行,第 16 列):无法将 lambda 表达式转换为类型“对象”,因为它不是委托类型
.NET Fiddle 在这里
Github在这里发帖
更新 我已经根据亚历克斯的回答更新了小提琴。我正在寻找一个子句,所以预期的输出是用括号括起来的 OR 语句。它现在大部分都按预期工作,除了每个组都应该在它自己的括号内,如下所示:
SELECT * FROM [Countries] WHERE ([Group1Field1] = @p0 OR [Group1Field2] > @p1 OR [Group1Field3] < @p2 OR [Group1Field4] = @p3) OR ([Group2Field1] = @p4 OR [Group2Field2] >= @p5 OR [Group2Field3] <= @p6) AND [Id] = @p7
最终更新 想通了。给出上述预期输出。谢谢。
c# - 在 Sql Kata 中获取原始 sql 字符串
我纯粹使用 SqlKata 在 C# 中构建 sql 查询。我想获取我构建的输出Query
,获取原始(编译的)sql 字符串,然后针对 SQL 执行它。
我认为这会做到这一点:
但这给出了这个:
这会引发异常,因为(@p0)
它是一个参数,而不是实际值。
在文档中,它提到了引入,Logger
但我真的不需要日志记录功能(现在)。
https://sqlkata.com/docs/execution/logging
无论如何从Query
填充所有参数的情况下获取原始 sql 字符串?