问题标签 [sp-executesql]

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 回答
842 浏览

sql - 带参数的 SP_ExecuteSQL 不喜欢包含子句

我的任务是修改存储过程,使其看起来像这样:

使用 SP_EXECUTESQL 的参数列表而不是字符串连接。问题是以下似乎不起作用:

无论出于何种原因,第一组语句都可以正常工作。第二个没有。我收到以下错误消息:Syntax error near '"' in the full-text search condition '"*00000000'.

@ID如果我从第二组语句中删除 4 个字符也可以。显然,它与任何一个@ID或列的长度有关,ID但我不知道是什么。

0 投票
2 回答
2084 浏览

sql-server-2008 - 从存储过程(SQL Server 和 C# ADO.NET)获取动态 sql 的返回值?

我创建了一个存储过程来从动态 sql 中获取返回值。我得到以下异常:

String[1]:Size 属性的大小为 0 无效。

我的过程:

我的代码:

我的 sql 字符串:

0 投票
1 回答
737 浏览

sql-server - t-sql udf 返回任何给定表中一行的串联字段值

我正在寻找一个函数,其中传递了一个表名和一个 id 值,并且该过程返回一个字符串,其中包含该指定行的所有字段值。所有可以引用的表都有一个名为“Id”的字段。我发现了其他可以连接表中指定行的示例,但一直无法找到动态指定表的方法。下面是我在这里找到的最接近的例子:

TSQL:一行中所有字段的值到一个字符串中

0 投票
1 回答
1193 浏览

sql-server - SQL Server sp_execute - 动态 SQL 中的 DateTime 变量出错

我尝试使用创建动态 SQL sp_executesql,但它给了我这个错误消息:

Msg 137, Level 15, State 2, Line 20
必须声明标量变量“@start”。

这是我的存储过程脚本

任何输入将不胜感激。

0 投票
2 回答
495 浏览

sql - 使用 SP_ExecuteSQL 时返回 NULL 数据值

我正在使用 sp_executesql,因此我可以灵活选择返回的内容。尝试返回没有数据的地方时遇到问题。

比如说我试图找到所有没有分配所有者的行。目前,我的查询编写如下。

这使我不必选择所有者。如果我这样做,它当然会包含在我的查询中。

因为我现在正在尝试添加一条基本上允许我带回未分配所有者的行:

但是,当我这样做时,它会带回整个列表。想法/建议?

0 投票
1 回答
312 浏览

android - 在 Android 上使用 phonegap 在单个事务上可以运行的 executeSql 语句的数量是否有限制?

在 Android 上使用 phonegap 在单个事务上可以运行的 executeSql 语句的数量是否有限制?我正在开始一个事务 (db.transaction(...)),然后遍历大约 4000 个产品。对于每个产品,我都在执行一个 executeSql INSERT 语句 (tx.executeSql(...))。所有的 executeSql INSERT 语句似乎都处理得很好,但是一旦它到达最后一个,我就会收到“内存不足”错误。该错误还指出“用户未能允许分配更多内存”。它在 iOS 和 Ripple 上运行良好,但在 Android 上是无用的!

0 投票
0 回答
2300 浏览

sql - 动态查询和动态 Where 子句解决方案

本周,我发现自己需要一些动态查询。现在,动态查询和动态 where 子句已经不是什么新鲜事了,而且在整个网络上都有很好的记录。然而,我需要更多的东西。我需要一种流畅的方式将新的 where 字段拉到客户端,并允许用户根据需要制作尽可能多的过滤器。甚至在单个字段上有多个过滤器。更重要的是,我需要访问 SQL Server 中所有可能的运算符。以下代码是实现此目的的一种方法。我将尝试用底部的完整代码指出代码的亮点。

希望你喜欢代码。

要求

  1. 该解决方案永远不会允许 SQL 注入。(不能使用 exec(command))
  2. 存储过程的调用者可以是任何东西。
  3. 数据集必须来自存储过程。
  4. 任何字段都可以根据需要过滤多次,几乎可以进行任何操作。
  5. 应允许过滤器的任何组合。
  6. 存储过程应该允许强制参数

首先,让我们看一下参数。

第一个参数必须始终发送,在这个演示中,我们有一个必须发送的经销商 ID。第二个参数是一个 XML 文档。这些是“动态 Where 子句”,我们认为这些潜在的 sql 注入,或者我认为这个参数是敌对的。

NAME= 字段名(如果你想混淆,你可以只使用 object_id) OPERATOR = SQL 运算符,例如 <,>,=,like,ect。VALUE 是用户输入的内容。

这是最终代码的样子。

首先是找出有多少“OrFilters”标签。

接下来,我们需要一个临时表来保存 XML 文档中的值。

我们现在为第一个“OrFilters”标签创建一个光标。

为了确保我们有一个有效的字段,我们检查系统表。

现在我们将参数保存到临时表

我们调用一个将实际构建 where 子句的函数。

查看这个函数,您可以看到我们使用 case 语句来生成 where 子句字符串。

最后调用 sp_execute。

呼叫代码

主存储过程

功能

0 投票
1 回答
753 浏览

asp.net - 捕获 sp_executesql 表 Result

我使用 sp_executesql 存储了过程:

现在我在后面的 vb.net 代码上使用存储过程,并将数据作为数据表并在后面的 VB.net 代码上处理。

但是现在我想获得表结果查询并进行相同stored procedure的更改以更改某些字段值,是否可以先在存储过程中捕获表,更改值并提供要在 vb.net 上使用的输出?

谢谢你的帮助。

0 投票
2 回答
98 浏览

sql - 从函数调用远程存储过程

我有一个存储过程 SprocA 驻留在 ServerA 上。SprocA 接受 4 个参数,执行一个动态 sql 并返回一个包含 1 列(1 个整数值)的记录。我希望能够从 ServerB 上的函数 FnB 调用它,以便我可以在服务器 ServerB 上的存储过程 SprocB 中使用它来返回记录集。

例如,我想要这样的东西

可能的结果:

请帮忙

TL

0 投票
2 回答
5672 浏览

mysql - MySQL 中是否有类似于 SQL Server 中的 sp_executesql 的过程?

我想在我的程序中进行动态查询。SQL Server 为此类任务提供了简洁的 sp_executesql 过程,MySQL 中是否有任何东西可以帮助我实现类似的功能?