问题标签 [sqlcommand]
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.
.net - SqlCommand.Dispose 是否关闭连接?
我可以有效地使用这种方法吗?
我担心的是:SqlCommand 的 Dispose 方法(退出 using 块时调用)是否会关闭底层 SqlConnection 对象?
c# - C#-SQL:如何执行一批StoredProcedure?
编辑:
我的问题不再是问题了:我重做了我的性能测试,我犯了一个致命的愚蠢错误:我忘记了 x1000 从毫秒中获取秒数:/ 对不起那些家伙。
有关信息:
- 我每秒从我的 PC 到本地网络上的数据库服务器进行大约 1900 次更新。
- 如果程序与 DB 在同一台机器上,则每秒更新 3.200 次。
- 每秒 3.500 次从我的 PC 上的数据库服务器更新我不重新创建和重新打开新的 SQLConnection。
- 每秒 5.800 次更新,带有批处理文本。对于我的 10.000 行,如果需要 5 秒,我的程序就可以了。很抱歉让您担心了。
实际上,我使用 SQL 存储过程在我的数据库中创建一行以避免 SQL 注入。在 C# 中,我有以下方法:
当我要插入一两行时,它会很棒。但如果我需要创建 1.000 个用户、10.000 个产品和 5000 个宠物,这不是最好的解决方案:我将在网络传输中浪费大量时间。
我相信,如果不检查它,我可以只使用有限数量的回调。所以我不想调用 10.000 次:
另一种方法是创建批处理文本,但存在 SQL 注入风险(而且很丑陋)。
.Net 中是否有管理它的“SqlCommandList”对象?如何在数据库中进行大量写入?那有什么好的模式呢?
.net - .net SqlCommand.ExecuteReader 是否关闭连接?
在这句话中:
如果出现异常,它会关闭连接吗?
.net - 将参数传递给 SQLCommand 的最佳方法是什么?
将参数传递给 SQLCommand 的最佳方法是什么?你可以做:
或者
或者
似乎第一个在性能方面或在错误检查方面可能以某种方式“更好”。但我想更确切地知道。
dataset - 如何以编程方式更改 DataSet SqlCommand CommandText
我有一个带有一堆表的生成数据集。在一个表中,我有一个自定义查询,用于选择 15 岁以上的人。我想在工作程序期间更改此查询,以便查询看起来像“从年龄 > 17 岁的人中选择 *”。现在它看起来像“从年龄 > 15 岁的人中选择 *”。
我只知道这个查询在 DataSet 中的名称是什么。这是GetNotYoungPeople。你能帮我解决这个问题吗?
c# - 如何获取到 DB 的 IDbCommand 输出?(。网)
我有一个 SqlCommand 对象,我执行它的 ExecuteNonQuery 方法。查询失败,但我看不到如何获取查询来调试它。你可以帮帮我吗?
更新我目前正在使用 Wireshark (tcpdump) 来读取命令,但我认为这不是最好的解决方案
更新CommandText 属性仅提供存储过程名称。我想要带有参数的整个命令。
asynchronous - 异步 SQLCommand 和 CCR
我一直在使用Jeffrey Richter的这篇 msdn 文章中的演示代码。
我在他的 ApmToCcrAdapters 中添加了一个新函数来处理 SqlCommand.BeginExecuteReader。只有在我阅读它之前它正在关闭阅读器。
以下代码用于提供 FromIteratorHandler:
依次调用以下代码:
.net - SQLCommand.ExecuteScalar() - 为什么会抛出 System.NullReferenceException?
谁能注意到以下功能可能有什么问题:
不知道为什么行`userID = (int)cmd.ExecuteScalar(); 抛出异常。
谢谢
c# - 即使列是整数,如何在 Select 语句的 IN 子句中提供 Id 字符串
我正在使用 an 分页数据,ObjectDataSource
并且我有以下方法:
EmployeeID是一个整数,因此,我放入的任何内容employeeIds
都将转换为整数。但是,因为我使用的是IN
关键字,很明显我想employeeIds
用逗号分隔的 id 列表替换:
但是当我更换线路时:
有类似的东西:
我收到一个异常,因为我提供了一个字符串,而EmployeeIds
它是一个整数。那么,我将如何去做呢?
谢谢。
编辑:
从回复中,我了解到这必须手动完成,但是包含此方法的类将由ObjectDataSource
. 那么我怎样才能提供employeeIds
运行时的值呢?
parameters - 我应该如何将用户定义的类型传递给 SqlParameterCollection.AddWithValue?
我有一个名为 的自定义数据类型StudentID
,它具有到字符串的隐式转换。
当我将StudentID
实例传递给SqlCommand.Parameters.AddWithValue
(作为值)并执行命令时,我收到以下错误:
指定参数的类型 likeSqlDbType.NVarChar
没有帮助。唯一可行的是将StudentID
值显式转换为字符串,这违背了隐式转换的目的。
我猜该框架不考虑可用的转换。我可以对StudentID
类做些什么来使命令处理它而不需要显式转换为原始类型?
这篇 MSDN 文章讨论了如何处理原始类型,而不是用户定义的类型。最接近的匹配是对象,它说它作为变体传递。
确切的故障点在 System.Data.SqlClient.MetaType.GetMetaTypeFromValue 方法中,带有签名private static MetaType GetMetaTypeFromValue(Type dataType, object value, bool inferLen)
。反射表明它寻找原始类型,如果 TypeCode 是对象,它会寻找 Sql* 数据类型,例如 SqlBoolean,因此它似乎在寻找非常特定的原始类型或 Sql* 类型。