C# 我的代码有没有一个简单的补丁,可以让mysql更新语句在csharp中工作?

C# 我的代码有没有一个简单的补丁,可以让mysql更新语句在csharp中工作?,c#,mysql,.net,C#,Mysql,.net,晚上好 我无法让Mysql更新语句正常工作。 也许我错过了什么 同样的mysqlconnection在选择和插入数据方面工作得非常完美。 仅供参考,选择和插入的部分已注释掉 我收到以下4条错误消息: MySqlException:尝试读取结果集时遇到致命错误。 MySqlException:从流读取失败。 IOException SocketException 完全例外: MySql.Data.MySqlClient.MySqlException HResult=0x80004005 M

晚上好

我无法让Mysql更新语句正常工作。 也许我错过了什么

同样的mysqlconnection在选择和插入数据方面工作得非常完美。 仅供参考,选择和插入的部分已注释掉

我收到以下4条错误消息:

MySqlException:尝试读取结果集时遇到致命错误。 MySqlException:从流读取失败。 IOException SocketException 完全例外:

MySql.Data.MySqlClient.MySqlException
  HResult=0x80004005
  Message=Fatal error encountered during command execution.
  Source=MySql.Data
  StackTrace:
   at MySql.Data.MySqlClient.MySqlCommand.ExecuteReader(CommandBehavior behavior)
   at MySql.Data.MySqlClient.MySqlCommand.ExecuteNonQuery()
   at sqltest.Program.Main(String[] args) in C:\Users\chaos\Dropbox\Visual Studio\Mysqltest\sqltest\sqltest\Program.cs:line 35

Inner Exception 1:
MySqlException: Fatal error encountered attempting to read the resultset.

Inner Exception 2:
MySqlException: Reading from the stream has failed.

Inner Exception 3:
IOException: Unable to read data from the transport connection: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond.

Inner Exception 4:
SocketException: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond


提前非常感谢

我的两个建议:

您是否尝试过这样创建命令?var cmd=new MySqlCommandSQL_update,conn;打开连接后,执行cmd.ExecuteNonQuery

您是否尝试过让连接字符串看起来像这样? 服务器=+服务器+;数据库=+数据库+;UID=+username+;密码=+密码


。。。其中server是ip/servername+端口,比如myserver:3306。如果服务器是本地服务器,我认为如果端口是标准端口,服务器可以是没有端口的本地主机。

我有两个建议:

您是否尝试过这样创建命令?var cmd=new MySqlCommandSQL_update,conn;打开连接后,执行cmd.ExecuteNonQuery

您是否尝试过让连接字符串看起来像这样? 服务器=+服务器+;数据库=+数据库+;UID=+username+;密码=+密码


。。。其中server是ip/servername+端口,比如myserver:3306。如果服务器是本地服务器,我认为如果端口是标准端口,服务器可以是没有端口的本地主机。

好的,伙计们。。。我感谢每一个试图帮助我的人

我发现了错误。Mysql服务器在5.7.17版上运行。 我没有更新服务器,而是在WindowsServer2012上安装了新版本的Mysql基准测试。我无法打开新的基准测试,但它解决了通信问题


我完全不知道为什么某些语句可以插入,选择,但更新不能。。。我感谢每一个试图帮助我的人

我发现了错误。Mysql服务器在5.7.17版上运行。 我没有更新服务器,而是在WindowsServer2012上安装了新版本的Mysql基准测试。我无法打开新的基准测试,但它解决了通信问题


我完全不知道为什么某些语句可以使用Insert,Select,但UPDATE不能使用。

这是实际的表名discordbot.tb\u潜伏吗?或者您打算编写discordbot.dbo.tb_潜伏?discordbot是模式,tb_潜伏是表。如果我在workbench中尝试SQL查询,它可以正常工作,但在c应用程序中不行。我想我不必写discordbot,因为我没有使用root用户。c应用程序通过用户discordbot获得访问权限,但这并不能解决致命错误的问题。你能发布你的连接字符串吗?我在主要问题连接字符串中添加了两个类这是实际的表名discordbot.tb_潜伏吗?或者您打算编写discordbot.dbo.tb_潜伏?discordbot是模式,tb_潜伏是表。如果我在workbench中尝试SQL查询,它可以正常工作,但在c应用程序中不行。我想我不必写discordbot,因为我没有使用root用户。c应用程序通过用户discordbot获得访问权限,但这并不能解决致命错误的问题。你能发布你的连接字符串吗?我把这两个类都添加到了主问题连接字符串@Mats Magnem好的,太糟糕了。那么我相信这是关于你的服务器的可用性。像端口阻塞,我是防火墙,错误的ip/网络或类似的东西。建议的连接字符串也不起作用?@MatsMagnem如果服务器在防火墙后面或不可访问,则连接打开;这将失败。也许我们需要查看实际异常的详细信息。它不能是连接/端口错误,因为它在数据中心的专用机器上运行。在下面的屏幕截图中,您将看到,我可以毫无问题地使用select,但由于某些原因,更新根本无法工作。@MKR:我确实在前面的帖子末尾添加了异常的全部细节。@Mats Magnem Ok,太糟糕了。那么我相信这是关于你的服务器的可用性。像端口阻塞,我是防火墙,错误的ip/网络或类似的东西。建议的连接字符串也不起作用?@MatsMagnem如果服务器在防火墙后面或不可访问,则连接打开;这将失败。也许我们需要查看实际异常的详细信息。它不能是连接/端口错误,因为它在数据中心的专用机器上运行。在下面的屏幕截图中,您将看到,我可以毫无问题地使用select,但由于某些原因,更新根本无法工作。@MKR:我确实在前面的帖子末尾添加了异常的全部细节。