问题标签 [sqlconnection]

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

asp.net - asp.net sqlcommand 没有按应有的方式进行 - 调试帮助请求

这是一个非常奇怪的情况,我似乎无法找出问题所在。

我有一个简单的 ASP 文本框和按钮,单击按钮时,我有一个简单的 sqlconnection/命令例程,根据文本框的文本值对数据库执行简单的更新。

代码:

create_Parameter 只是一个简单的测试函数,它执行创建参数对象通常需要的 2-3 行。

我遇到的问题是,添加到数据库的值始终是逗号,后跟文本框中给出的文本。

我在 ExecuteNonQuery 调用之前执行了 response.write,以检查 Parameter 值和 CommandText,它们都很好并且符合预期。如果我将预期的内容复制到管理工作室查询窗口中,它可以正常工作.. users 是一个简单的表,其中包含 varchar 列,没有触发器或约束等。除了我展示的内容之外,ASP 代码中没有其他子代码。

所以现在我被卡住了,我还能做些什么来弄清楚这个逗号在哪里/为什么被添加到我的插入语句中???

干杯!

0 投票
3 回答
791 浏览

.net - 全局 SqlConnection

我有一个需要 SqlConnection 的 Web 服务。有 5 个 Web 方法使用此 SqlConnection,但目前它们在每个方法中(本地)声明。在这种情况下将其设为全局变量是否可以接受?

谢谢

0 投票
3 回答
1243 浏览

c# - 在循环中调用 sqlCommand 会增加每一步的执行时间

我有一个循环,它在循环中执行超过 40,000 次迭代的存储过程,如下所示:

这段代码是从我每 1000 次迭代拦截和计时的循环中调用的。我得到的时间如下:

[0]:“开始 0 毫秒”[1]:“1000 完成 578.125 毫秒”

[2]:“1000 完成 921.875ms”

[3]:“1000 完成 1328.125ms”

[4]:“1000 完成 1734.375ms”

[5]:“1000 完成 1140.625ms”

[6]:“1000 完成 1250 毫秒”

[7]:“1000 完成 1703.125ms”

[8]:“1000 完成 1718.75ms”

……

[31]:“1000 完成 3234.375ms”

[32]:“1000 完成 3390.625 毫秒”

[33]:“1000 完成 3453.125ms”

[34]:“1000 完成 3609.375ms”

[35]:“1000 完成 3765.625 毫秒”

[36]:“1000 完成 3796.875 毫秒”

[37]:“1000 完成 3968.75 毫秒”

[38]:“1000 完成 4093.75 毫秒”

[39]:“1000 完成 4203.125ms”

[40]:“1000 完成 4546.875 毫秒”

[41]:“1000 完成 4406.25 毫秒”

[42]:“总停止 101093.75ms 1515.625ms”

有谁知道为什么这些执行时间会增加?我需要以超过一百万次迭代运行此代码 - 按照它的速度执行一次迭代需要一分钟......

非常感谢

0 投票
2 回答
1182 浏览

named-pipes - SqlConnection 错误命名管道提供程序

一点背景:

我有一个 Windows .NET 应用程序,被北美大约 40 名现场员工使用。该程序允许用户在现场输入数据(远离互联网访问),然后在晚上同步到我们的 Sql Server 2005 数据库。几天前,我的两个用户报告说,当他们执行一个尝试连接到我们的服务器数据库(使用 .NET 的 SqlConnection 类)的操作时出现以下错误。

System.Data.SqlClient.SqlException:建立与 SQL Server 的连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确以及 SQL Server 是否配置为允许远程连接。(提供者:命名管道提供者,错误:40 - 无法打开与 SQL Server 的连接)

我们的现场员工通常使用酒店的 Wi-Fi 连接进行操作,起初我以为他们俩在同一天巧合地进入了“不合作”的网络。第二天,搬到不同的酒店后,其中一位用户的问题消失了,但另一位用户的问题仍然存在。

除了提供错误消息之外,此背景的目的是指出

  • 这是使用该软件一年多以来第一次出现此问题,并且
  • 我们的大多数用户使用相同的软件连接到我们的服务器数据库没有任何问题。

这让我犹豫是否认为问题出在服务器上(我读过的有关此错误的大多数论坛和博客都提供了确保正确配置 SQL Server 的步骤)。

注意到错误消息的Named Pipes Provider部分,我猜测可能是这个用户的计算机或网络导致它尝试通过管道而不是 TCP 连接,所以我确实尝试将服务器配置为允许 TCP/IP 和 Named Pipes 进行远程连接连接,以前仅设置为 TCP/IP。更改此设置后,此用户的错误继续存在。

所以现在我要集思广益,想一想这个用户的计算机/软件/互联网连接有什么特别之处,会阻碍它连接到我们的 SQL Server。

我们的连接字符串确实使用了我们服务器的 URL(不是 IP 地址),我想知道他的笔记本电脑是否在通过该地址找到它时遇到问题。但是,他能够访问从同一 URL 托管的网站,所以我猜问题出在其他地方。

任何想法将不胜感激。谢谢!

0 投票
0 回答
1576 浏览

c# - c#智能设备应用程序上的sql连接

我正在尝试使用袖珍电脑模拟器构建应用程序......我的目标是连接到放置在另一台电脑上的 sqlserver express db 注意在一个简单的桌面程序中一切正常,但在智能手机程序中,当这段代码运行:

当调用 Open 时,这是错误消息:

可能的错误在哪里?桌面应用程序的连接字符串有效,智能手机模拟器找到了“\SERVER”电脑......

有任何想法吗?

0 投票
1 回答
263 浏览

c# - 包括 SQLConnection 的方法 - 好方法?

嘿,我目前在我的代码中有这个方法:

此代码是从 aspx.cs 页面调用的。在方法中包含 SQL 连接内容和适配器是一种好方法吗?如果不是,那如何重构?不知何故,我认为这不利于测试,例如......

谢谢你的想法:)

0 投票
1 回答
379 浏览

sqlconnection - 访问 sqlconnection 或 dbconnection 的 statechange 事件

每次创建/打开连接时,我都需要在数据库中执行一个存储过程。所以我虽然可以处理 dbconnection/sqlconnection 的状态更改事件。

有没有办法在全球范围内处理它们?我不知道在我的程序中打开连接的位置,所以我无法单独访问 sql 连接对象。

PS我使用企业库来处理数据连接,但我自己也很少打开sql连接。

因此,我想为所有实例全局处理 sqlconnection/dbconnection 的 statechange 事件,并为该实例调用存储过程。

0 投票
4 回答
2900 浏览

c# - 哪种模式更适合 SqlConnection 对象?

哪种模式更适合SqlConnection对象?哪个性能更好?你们提供其他模式吗?

VS

0 投票
1 回答
522 浏览

ado.net - 客户端应用程序中打开的 SqlConnections 与 SQL Server 中的进程之间是什么关系?

我只是尝试对 SQL Server 数据库中的表进行简单的架构更改(通过使用 SMSS 中的设计工具)。每当我尝试保存更改时,它都会超时。我想知道这是否是由于“锁定”表的现有连接。

我决定终止连接作为一个实验。我查询 master..sysprocesses 以获取该数据库的当前 spid,并一一杀死它们,直到我能够保存我的架构更改。(不是很科学,但我远非 SQL Server 专家)。果然,当我杀死了所有的 spid(除了我使用 SMSS 的那个),我能够保存架构更改。

想问一下ADO.NET SqlConnections和spids的关系。例如,如果客户端应用程序在 SqlConnection 对象上调用 Open(),我是否应该在 master..sysprocesses 中看到另一个 spid?如果我在那个 SqlConnection 上调用 Close() 会怎样?蜘蛛应该消失吗?

我敢肯定这不是那么简单,因为我知道有一个连接池的概念,但是有人可以阐明这种关系是如何工作的吗?

谢谢

大卫

0 投票
1 回答
669 浏览

c# - 在 Web 服务中处理静态资源

在 WCF 之前的 .NET (C#) Web 服务中,我有一个昂贵的 IDisposable 资源,我持有一个静态(实际上是 ThreadStatic)引用。(在内部它包含一个 SqlConnection。)如何确保在应用程序池刷新时处理它,我应该简单地抑制 FxCop 警告而不担心它,还是有第三种选择?

最初,该服务使用 using 块打开每个请求的连接,但由于“连接资源问题”,该设计被拒绝。