问题标签 [sqlparameter]

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 投票
9 回答
80980 浏览

c# - WHERE IN(ID 数组)

我有 web 服务,它传递了一个整数数组。我想按如下方式执行 select 语句,但不断出现错误。我需要将数组更改为字符串吗?

0 投票
1 回答
2248 浏览

sql-server - 如何确定要添加到参数的变量的 SQLDBType?

如何根据要存储在数据库中的输入变量确定将哪个 SQLDBType 分配给参数?是否有用于测试的 GetType 等效项?

0 投票
1 回答
4883 浏览

.net - SqlCommand 如何清理参数?

使用SqlParameters是防止数据库查询中的 SQL 注入的推荐方法。我在哪里可以找到内部清理这些参数的代码/函数?我想在我的自定义实现中重用这个函数。我尝试使用 Reflector 找到它,但没有成功。

0 投票
1 回答
1382 浏览

c# - DbParameter IsNullable 功能?

我在 ADO.Net 中使用的参数不多。我正在编写一个自定义的 .Net 数据提供程序(以 SqlClient 为模型),并且必须在我的参数类中实现 IsNullable 属性,该属性继承自 DbParameter。我的数据提供者不支持存储过程,所以我只支持输入(替换样式)参数。

MSDN 文档对 IsNullable 的功能相当不清楚,指出“获取或设置一个值,指示参数是否接受空值”。谷歌搜索发现很多人对 IsNullable 的作用感到困惑,他们说将 IsNullable 设置为 false 并不禁止他们使用参数,这将是一个空值,正如他们所期望的那样。

基于此,我认为 IsNullable 属性可能与存储过程的使用有关,以及存储过程的参数是否可以为空,而不是参数值是否可以为空。

在这种情况下,由于我没有存储过程,我的实现可以是:

为了避免不得不摆弄一些测试代码来了解 SqlParameter 的 IsNullable 实现如何工作,如果有使用参数编写代码的经验的人可以解释 IsNullable,我将不胜感激。

0 投票
1 回答
182 浏览

parameters - Microsoft Access 参数查询偶尔失败

我有一个查询,基本上是这样说的:

一旦我有了这个,我返回第一个 DB_ID(应该只有一个)。

我为调用它而编写的例程是用 C# 编写的,因此无论 DB_ID 的名称是什么,我都可以获得任何表名的数据库 ID。

大多数 ForeignKey 参数是整数,但有些是字符串值。然后,要添加参数值,我使用

这个例程与现有的数据库 ID 配合得非常好;但是,当找不到 ForeignKey 时,它会返回 3 而不是 null。

我意识到我可以使用蛮力技术并简单地编写两种样式的 SQL 语句(一种接受整数,另一种接受字符串)并完全避免参数,但我想知道并理解为什么这个参数化例程不是在职的。

有人可以向我解释为什么这不起作用吗?

eof

0 投票
1 回答
1264 浏览

sqlparameter - 从表单文本框中设置 SqlDataSource SelectParameters

我正在尝试使用文本框输入作为 SqlParameter,但它仅在页面首次加载时进入 DataSelecting。不是在提交 from 之后。

这是aspx页面上的代码。

protected void DataSelecting(object sender, SqlDataSourceSelectingEventArgs e) { e.Command.Parameters["@zip"].Value = ZipBox.Text; }

"
SelectCommand="SELECT Name FROM Names WHERE (ZipCode = @zip)" OnSelecting="DataSelecting"> SelectParameters> parameter Name="zip" DefaultValue="1" /> SelectParameters> SqlDataSource>

形式

id="ZipSearch" runat="server" action="Default.aspx" method="post">

文本框 ID="ZipBox" runat="server" />

按钮 id="btnSubmit" Text="Submit" runat="server" />

形式

谢谢你的帮助,

马特

0 投票
1 回答
917 浏览

unit-testing - 如何测试 SqlParameter 是否相等

使用 NUnit 和 NMock2 我无法比较我认为相同的 SqlParameters:

在尝试使用 NMock2 测试方法的执行时,我偶然发现了这个问题

我收到了这个错误:

NMock2.Internal.ExpectationException:意外调用 sqlDao.ExecuteNonQuery("usp_Update_Comment", ) 预期:1 次:sqlDao.ExecuteNonQuery(等于 "usp_Update_Comment",等于 <@ChangeId>) [调用 0 次]

问题:

  • 当您期望 Parameter 是 SqlParameter 时,如何使用 NMock2 进行测试?
  • 你如何比较两个 SqlParameters 的相等性?
0 投票
3 回答
1204 浏览

ado.net - 如何在 ADO.NET 中为表值函数调用传递默认关键字

所以这是交易。在我们的数据库中,出于安全性和模块化的目的,我们将大部分读取(即选择语句)包装在表值函数中。所以我有一个定义一个或多个可选参数的 TVF。

我相信具有默认参数的 TVF 要求default在调用 TVF 时使用关键字,如下所示:

没关系,一切都在查询分析器中运行,但是当实际从 ADO.NET 发出这个请求时,我不确定如何创建一个 sql 参数,该参数实际上将单词default放入呈现的 sql 中。

我现在大致是这样的:

那么,有人知道如何传递default给 TVF 吗?

0 投票
3 回答
516 浏览

asp.net - ASP.net 用户数据在访问对象的用户之间获得交叉

这有点奇怪。我正在寻找关于如何提出正确问题的想法,就像我是一个实际的解决方案一样。

我有一个网站,而且我们的流量有了巨大的增长。现在突然之间,我们左右两边都出现了 sql 参数错误。几周前我们切换到了一个新的 sql 服务器,一切都很好,但增加的流量似乎让我们崩溃了。

我有一个数据访问类,当每个用户尝试登录时都会调用它。在最终更新用户上次登录日期并将他们转发到管理部分之前,它会运行几个任务。

我从跟踪日志中看到的内容表明,当我登录前几个任务时正在使用我的数据(比如说 user=birk pass=word)。但是在某些时候,访问器类开始从其他试图登录的人那里发送数据(比如说 user=abcxyz)

完成后,我们与服务器建立的每个连接都会关闭。当我完成所有访问器对象时,我会将它们清空。但不知何故,来自不同会话的不同用户数据正在进入其他人的对象实例。

我没有使用会话/应用程序/缓存/视图状态来存储对象,所以我并没有真正看到它们如何相互编辑......这真的很奇怪,我什至不知道如何着手研究这个问题。

这大致是访问器类...我删除了一些不依赖于问题的部分

任何想法或想法都会很棒。谢谢

0 投票
4 回答
8665 浏览

c# - 是否可以使用 SqlParameters 获取 SqlCommand 的解析文本?

我想要做的是创建一些带有参数的任意 sql 命令,设置参数的值和类型,然后返回解析的 sql 命令 - 包括参数。我不会直接对 sql 数据库运行此命令,因此不需要连接。因此,如果我运行下面的示例程序,我希望看到以下文本(或类似内容):

示例程序是:

这是使用 .net 标准库可以实现的吗?最初的搜索说不,但我希望我错了。