C# MySqlConnection 不会关闭

2023-12-26

我有一个应用程序触发 mysql 命令(查询)“显示数据库”,查询正常工作并返回,但我无法关闭连接。我使用的用户同时允许 24 个连接,因此问题在我的程序中进一步出现,但将允许的连接减少到 2 个表明我什至无法关闭第一个查询(它不在循环中)。代码如下:

    protected override Dictionary<string, Jerow_class_generator.Database> loadDatabases()
    {
        MySqlConnection sqlCon = new MySqlConnection(this.ConnectionString);
        sqlCon.Open();

        MySqlCommand sqlCom = new MySqlCommand();
        sqlCom.Connection = sqlCon;
        sqlCom.CommandType = CommandType.Text;
        sqlCom.CommandText = "show databases;";

        MySqlDataReader sqlDR;
        sqlDR = sqlCom.ExecuteReader();

        Dictionary<string, Jerow_class_generator.Database> databases = new Dictionary<string, Jerow_class_generator.Database>();
        string[] systemDatabases = new string[] { "information_schema", "mysql" };

        while (sqlDR.Read())
        {
            string dbName = sqlDR.GetString(0);
            if (!systemDatabases.Contains(dbName))
            {
                databases.Add(sqlDR.GetString(0), new MySQL.Database(dbName, this));
            }
        }

        sqlCom.Dispose();
        sqlDR.Close();

        sqlCon.Close();
        sqlCon.Dispose();
        return databases;
    }

附: '新 MySQL.Database(dbName, this));'是我自己制作的类,仅存储数据库结构,可以认为是无关紧要的。

我得到的确切错误是“max_user_connections”。在下次需要触发查询时的 connection.open 行上。


而不是跟踪所有Open/Close/Dispose到处打电话,我建议将所有这些替换为using声明 http://msdn.microsoft.com/en-us/library/yh598w02.aspx。这将确保每个对象的预期范围是明确的,并且在退出该范围时将被销毁/处置。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C# MySqlConnection 不会关闭 的相关文章

  • 如何在 Unity 中从 RenderTexture 访问原始数据

    问题的简短版本 我正在尝试访问 Unity 中 RenderTexture 的内容 我一直在使用 Graphics Blit 使用自己的材质进行绘制 Graphics Blit null renderTexture material 我的材
  • 模板类的不明确多重继承

    我有一个真实的情况 可以总结为以下示例 template lt typename ListenerType gt struct Notifier void add listener ListenerType struct TimeListe
  • C++ 求二维数组每一行的最大值

    我已经设法用这个找到我的二维数组的每一行的最小值 void findLowest int A Cm int n int m int min A 0 0 for int i 0 i lt n i for int j 0 j lt m j if
  • 嵌入式系统中的malloc [重复]

    这个问题在这里已经有答案了 我正在使用嵌入式系统 该应用程序在 AT91SAMxxxx 和 cortex m3 lpc17xxx 上运行 我正在研究动态内存分配 因为它会极大地改变应用程序的外观 并给我更多的力量 我认为我唯一真正的路线是为
  • SSH 主机密钥指纹与模式 C# WinSCP 不匹配

    我尝试通过 WinSCP 使用 C 连接到 FTPS 服务器 但收到此错误 SSH 主机密钥指纹 与模式不匹配 经过大量研究 我相信这与密钥的长度有关 当使用 服务器和协议信息 下的界面进行连接时 我从 WinSCP 获得的密钥是xx xx
  • Cygwin 下使用 CMake 编译库

    我一直在尝试使用 CMake 来编译 TinyXML 作为一种迷你项目 尝试学习 CMake 作为补充 我试图将其编译成动态库并自行安装 以便它可以工作 到目前为止 我已经设法编译和安装它 但它编译成 dll 和 dll a 让它工作的唯一
  • 使用 Microsoft Graph API 订阅 Outlook 推送通知时出现 400 错误请求错误

    我正在尝试使用 Microsoft Graph API 创建订阅以通过推送通知获取 Outlook 电子邮件 mentions 我在用本文档 https learn microsoft com en us graph api subscri
  • 为什么 POSIX 允许在只读模式下超出现有文件结尾 (fseek) 进行搜索

    为什么寻找文件结尾很有用 为什么 POSIX 让我们像示例中那样在以只读方式打开的文件中进行查找 c http en cppreference com w c io fseek http en cppreference com w c io
  • C# 中值类型和引用类型有什么区别? [复制]

    这个问题在这里已经有答案了 我知道一些差异 值类型存储在堆栈上 而引用类型存储在托管堆上 值类型变量直接包含它们的值 而引用变量仅包含对托管堆上创建的对象位置的引用 我错过了任何其他区别吗 如果是的话 它们是什么 请阅读 堆栈是一个实现细节
  • 在 ASP.Net Core 2.0 中导出到 Excel

    我曾经使用下面的代码在 ASP NET MVC 中将数据导出到 Excel Response AppendHeader content disposition attachment filename ExportedHtml xls Res
  • 使用安全函数在 C 中将字符串添加到字符串

    我想将文件名复制到字符串并附加 cpt 但我无法使用安全函数 strcat s 来做到这一点 错误 字符串不是空终止的 我确实设置了 0 如何使用安全函数修复此问题 size strlen locatie size nieuw char m
  • 如何在 Team Foundation 上强制发表有意义的签入评论?

    我有一个开发团队有一个坏习惯 他们写道poor签入评论 当我们必须在团队基础上查看文件的历史记录时 这使得它成为一场噩梦 我已经启用了变更集评论政策 这样他们甚至可以在签到时留下评论 否则他们不会 我们就团队的工作质量进行了一些讨论 他们很
  • 更改窗口的内容 (WPF)

    我创建了一个简单的 WPF 应用程序 它有两个 Windows 用户在第一个窗口中填写一些信息 然后单击 确定 这会将他们带到第二个窗口 这工作正常 但我试图将两个窗口合并到一个窗口中 这样只是内容发生了变化 我设法找到了这个更改窗口内容时
  • 什么是 C 语言的高效工作流程? - Makefile + bash脚本

    我正在开发我的第一个项目 该项目将跨越多个 C 文件 对于我的前几个练习程序 我只是在中编写了我的代码main c并使用编译gcc main c o main 当我学习时 这对我有用 现在 我正在独自开展一个更大的项目 我想继续自己进行编译
  • 将应用程序从 Microsoft Access 迁移到 VB 或 C#.NET

    我目前正试图说服管理层需要将我们的应用程序之一移植到 NET 该应用程序已经发展成为 Access 中的一个庞然大物 SQL 后端 拥有 700 个链接表 650 个表单 子表单 130 个模块和 850 个查询 我几乎知道这样做的所有主要
  • 如何构建印度尼西亚电话号码正则表达式

    这些是一些印度尼西亚的电话号码 08xxxxxxxxx 至少包含 11 个字符长度 08xxxxxxxxxxx 始终以 08 开头 我发现这个很有用 Regex regex new Regex 08 0 9 0 9 0 9 0 9 0 9
  • 如何在内存中存储分子?

    我想将分子存储在内存中 这些可以是简单的分子 Methane CH4 C H bond length 108 7 pm H H angle 109 degrees But also more complex molecules like p
  • 方法参数内的变量赋值

    我刚刚发现 通过发现错误 你可以这样做 string s 3 int i int TryParse s hello out i returns false 使用赋值的返回值是否合法 Obviously i is but is this th
  • 哪个是识别关系或非识别关系中的子表?

    在表之间的识别和非识别关系的上下文中 MySQL 文档大量将表称为父表和子表 如何判断哪个表是父表 哪个表是子表 子表 A K A 弱实体 http en wikipedia org wiki Weak entity 是一个表 其主键属性d
  • 将变量分配给另一个变量,并将一个变量的更改反映到另一个变量中

    是否可以将一个变量分配给另一个变量 并且当您更改第二个变量时 更改会瀑布式下降到第一个变量 像这样 int a 0 int b a b 1 现在 b 和 a 都 1 我问这个问题的原因是因为我有 4 个要跟踪的对象 并且我使用名为 curr

随机推荐

  • 动态大小的结构体 - 艰难地学习 C Ex17

    我在学习 C The Hard Way 中的练习时遇到问题 该练习提供了一个简单的数据库程序 该程序具有固定的大小和行数 下面您可以看到构成数据库的结构 define MAX DATA 512 define MAX ROWS 100 str
  • 使用 capybara-webkit 单击 Google 地图中的叠加标记

    有没有办法用 capybara webkit 点击 Google 地图叠加层 水豚使用 Selenium 怎么样 我想在选择标记后测试信息窗口的内容 我也想测试一下有没有n页面上的标记 要测试页面上是否有 n 个标记 expect find
  • 有没有办法在将 Angular 4 服务的数据注入到组件之前解析该数据?

    我是 Angular 2 4 的新手 所以请原谅我的无知 我有一个服务想要注入到各个组件中 但是该服务使用需要首先从服务器检索的元数据 我想知道是否有一种方法可以确保在将服务注入到组件之前解析服务的数据 我读了一些关于路线守卫的内容 这听起
  • 更改 Visual Studio 解决方案中所有项目的目标框架

    我需要更改所有项目的目标框架 我有数百个项目的许多解决方案 这里有什么新的东西还是我必须改变每个项目 刚刚发布目标框架迁移器 http visualstudiogallery msdn microsoft com 47bded90 80d8
  • 如何从C中获取Linux中当前文件(pwd)的路径?

    我想知道是否可以以某种方式运行system pwd 在当前 DIR 上 例如 我们有这样的文件夹结构 example gt test gt gt file gt test2 gt gt file3 gt gt file4 与opendir
  • CNTK C# 逻辑回归 w 和 b 变量值

    我知道 C 的 CNTK 有点新 但我希望有人可以帮助我 我在 python 中遵循这个逻辑回归示例 https github com Microsoft CNTK blob master Tutorials CNTK 101 Lo gis
  • restartBrowserBetweenTests 与 onPrepare() 之间的交互

    我希望我的每个测试都在干净的浏览器 Firefox 上运行 所以我使用restartBrowserBetweenTests true选项 因为我使用非 Angular 演示应用程序 onPrepare 我使用的功能browser waitF
  • 在 jQuery 中检查 DIV 的输入项值不为空

    我在 DIV 中堆叠了一些输入文本字段 下拉菜单 无线电组 现在 我如何检查此 DIV 内的所有文本字段 单选组和下拉列表是否具有某些值 我创建了一个简单的模型JSFiddle http jsfiddle net tq3jL2d6 1 jQ
  • 没有这样的过滤器:'drawtext'

    我的主要目标是收集用户输入并将其转换为黑色背景的视频 然后输入文本将从左向右移动 同时视频在背景中播放音频 目前我被建议使用 drawtext 但我还没有发现它有效 我的命令 ffmpeg i test mp4 vf drawtext fo
  • 即使应用程序关闭(不在后台运行)/屏幕锁定,GPS 位置跟踪

    我想跟踪与 Strava 非常相似的用户位置 即使在关闭后也是如此 我尝试了 AlarmManager 但它并没有每隔一分钟就给我执行一次 如果设备进入睡眠模式 仅使用 BiGGZ 解释的服务将不起作用 虽然该服务不会被终止 但您的应用程序
  • 使用 ShapeDrawable 获取 textView 背景颜色

    我有一个文本视图 其背景在 xml 文件中定义
  • java web应用程序布局,请解释一些设计原则/模式

    我正在研究这个使用 hibernate jsp 和 spring 框架的 java web 应用程序 据我所知 文件布局是这样的 classes com example project1 项目内部1 dao entity Dao java
  • 如何检查图形是否打开以及如何关闭它?

    我的 m 文件根据参数打开图形 有时是一位数 有时是2位数 如果用户调用该函数 就会出现数字 如果他使用其他参数再次调用该函数 我将在新绘图之前使用 clf 清除数字 如果第二个调用设置为仅绘制一个图形 则第二个图形 由前一个调用打开 将保
  • 使用字符串更改数据框列的类别

    我有一个数据框 其中所有列都有character类 但许多列应该是数字或整数类 我还有一个字符向量 其中包含每列所需的类 例如 classes lt c integer integer numeric character logical n
  • Laravel 5.1 @can,如何使用 OR 子句

    我没有找到如何在 can视图中使用子句 OR AND 来检查多种能力 I tried can permission1 permission2 can permission1 or permission2 can permission1 pe
  • Android - 如何将自定义CSS注入webview中的外部网页

    我想将自定义 CSS 应用到 WebView 中的外部网页中 如下所示 webView loadUrl webView loadUrl http www stackoverflow com 您可以使用以下方式注入自定义 JSjavascri
  • 为什么将变量列为依赖项可以“解决”过时的闭包问题?

    我试图了解我所看到的有关的一般建议React 和陈旧的闭包 https dmitripavlutin com react hooks stale closures 具体来说 据我了解 术语 过时的闭包 用于描述组件和useEffect函数是
  • 如何找到两个字符串中最大的子串?

    如何找到两个字符串中最大的公共子串 可能使用一个后缀树 http en wikipedia org wiki Suffix tree 为两个字符串创建树 然后使用这些结构来查找公共路径
  • 使用 C++ 解析非常大的 CSV 文件

    我的目标是在 OSX 环境中的 QT 项目中使用 C 解析大型 csv 文件 当我说 csv 时 我指的是 tsv 和其他变体 1GB 5GB 这似乎是一个简单的任务 但当文件大小变大时 事情就会变得复杂 我不想编写自己的解析器 因为有许多
  • C# MySqlConnection 不会关闭

    我有一个应用程序触发 mysql 命令 查询 显示数据库 查询正常工作并返回 但我无法关闭连接 我使用的用户同时允许 24 个连接 因此问题在我的程序中进一步出现 但将允许的连接减少到 2 个表明我什至无法关闭第一个查询 它不在循环中 代码