C产品在市场上有哪些独特优势?

2026-04-29 03:441阅读0评论SEO资讯
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计850个文字,预计阅读时间需要4分钟。

C产品在市场上有哪些独特优势?

我正在开发一个项目,必须通过循环更新MySql中的表并处理数据。

我正在开发一个项目,我必须通过循环更新 MySql中的表并在C#中更新每一行(逐个).注意:我必须更新表格中只有一列的值.

现在,我知道这个问题曾经被问过(很多次),但是在花了很多时间在互联网上搜索之后,我还没有找到解决问题的方法.

更多说明:

所以我已经知道了使这项工作成为必要的一些事情:

>我知道如何建立(工作)SSH连接.
>我知道如何建立与我的数据库的(工作)MySql连接.
>我知道如何在C#中运行/执行SELECT和UPDATE Query / Command.

因此,我需要做的唯一一件事就是循环本身.

现在,在我的研究中,我发现了一些建议使用Reader的答案.我不知道这是否是我需要的和(如果是的话)如何正确使用它.

下面是我到目前为止的代码(用于建立连接和执行查询).

我的代码:

class ReaderDemo1 { public static void Update() { Console.WriteLine("[Core] Opening Connection To Database..."); Database.openStockConn(Settings.databaseName, Settings.databaseUsername, Settings.databasePassword, Settings.sshHost, Settings.sshUsername, Settings.sshPassword); if (Database.stockConn.State != ConnectionState.Open) { Database.openStockConn(Settings.databaseName, Settings.databaseUsername, Settings.databasePassword, Settings.sshHost, Settings.sshUsername, Settings.sshPassword); } Console.WriteLine("[Core] database connection is now open!\n"); MySqlCommand cmd = new MySqlCommand("SELECT value FROM catalog_product_entity_decimal", Database.stockConn); try { Console.WriteLine("[Price] Updating Prices..."); MySqlCommand command = new MySqlCommand("UPDATE catalog_product_entity_decimal SET value= 1112 WHERE value_id= 4063", Database.stockConn); command.ExecuteNonQuery(); Console.WriteLine("[Price] Prices Have Been Updated!"); } catch { Console.WriteLine("Updating Failed!"); } finally { if (Database.stockConn != null) { Database.stockConn.Close(); } } } }

只是为了给出一些额外的背景:

> Database.cs是我创建连接的地方(SSH和MySql)
> Settings.cs是我拥有SSH和MySql连接的所有登录数据的地方.

如果你们想知道,我已经尝试了一些关于循环的事情但是(正如我已经提到的)这些尝试都没有成功.

我的尝试与读者:

C产品在市场上有哪些独特优势?

using (var reader = command.ExecuteReader()) { var indexOfValue = reader.GetOrdinal("value"); while (reader.Read()) { var price1 = reader.GetValue(indexOfValue); Console.WriteLine("Executing Update Command..."); MySqlCommand cmd = new MySqlCommand("UPDATE catalog_product_entity_decimal SET value= 1222 WHERE entity_id= 759 AND entity_id= 839 AND entity_id= 881", con); cmd.ExecuteNonQuery(); Console.WriteLine("Update Command Executed!"); } }

如上所述,上面的代码不起作用,我希望它如何工作(可能是因为它现在实际上没有做任何事情).只是为了让你们知道,我没有遇到错误.我只是坚持如何做到这一点.

我希望你们中的一个人可以帮助我,或指出我的方向,如果你认为我的问题与另一个问题重复,那就告诉我,我会调查一下! :) 提前致谢.

亲切的问候,

LKS

编辑:

如果你们想知道,this就是我的桌子.
该表包含大约5600行,因此这些行只是顶行.

就像Frederiks的回答一样,你现在要做的就是循环一个表并一遍又一遍地执行相同的Query.

即使你设法让你的代码工作,它也会非常慢(因为你有大约5600行要更新).

所以我的建议是你创建一个包含新值的新表(所以你想在循环之后得到一个).然后只需运行一个更新命令,使用新表中的值更新旧表.

这个选项可能需要几秒钟才能完成,所以速度要快得多!

本文共计850个文字,预计阅读时间需要4分钟。

C产品在市场上有哪些独特优势?

我正在开发一个项目,必须通过循环更新MySql中的表并处理数据。

我正在开发一个项目,我必须通过循环更新 MySql中的表并在C#中更新每一行(逐个).注意:我必须更新表格中只有一列的值.

现在,我知道这个问题曾经被问过(很多次),但是在花了很多时间在互联网上搜索之后,我还没有找到解决问题的方法.

更多说明:

所以我已经知道了使这项工作成为必要的一些事情:

>我知道如何建立(工作)SSH连接.
>我知道如何建立与我的数据库的(工作)MySql连接.
>我知道如何在C#中运行/执行SELECT和UPDATE Query / Command.

因此,我需要做的唯一一件事就是循环本身.

现在,在我的研究中,我发现了一些建议使用Reader的答案.我不知道这是否是我需要的和(如果是的话)如何正确使用它.

下面是我到目前为止的代码(用于建立连接和执行查询).

我的代码:

class ReaderDemo1 { public static void Update() { Console.WriteLine("[Core] Opening Connection To Database..."); Database.openStockConn(Settings.databaseName, Settings.databaseUsername, Settings.databasePassword, Settings.sshHost, Settings.sshUsername, Settings.sshPassword); if (Database.stockConn.State != ConnectionState.Open) { Database.openStockConn(Settings.databaseName, Settings.databaseUsername, Settings.databasePassword, Settings.sshHost, Settings.sshUsername, Settings.sshPassword); } Console.WriteLine("[Core] database connection is now open!\n"); MySqlCommand cmd = new MySqlCommand("SELECT value FROM catalog_product_entity_decimal", Database.stockConn); try { Console.WriteLine("[Price] Updating Prices..."); MySqlCommand command = new MySqlCommand("UPDATE catalog_product_entity_decimal SET value= 1112 WHERE value_id= 4063", Database.stockConn); command.ExecuteNonQuery(); Console.WriteLine("[Price] Prices Have Been Updated!"); } catch { Console.WriteLine("Updating Failed!"); } finally { if (Database.stockConn != null) { Database.stockConn.Close(); } } } }

只是为了给出一些额外的背景:

> Database.cs是我创建连接的地方(SSH和MySql)
> Settings.cs是我拥有SSH和MySql连接的所有登录数据的地方.

如果你们想知道,我已经尝试了一些关于循环的事情但是(正如我已经提到的)这些尝试都没有成功.

我的尝试与读者:

C产品在市场上有哪些独特优势?

using (var reader = command.ExecuteReader()) { var indexOfValue = reader.GetOrdinal("value"); while (reader.Read()) { var price1 = reader.GetValue(indexOfValue); Console.WriteLine("Executing Update Command..."); MySqlCommand cmd = new MySqlCommand("UPDATE catalog_product_entity_decimal SET value= 1222 WHERE entity_id= 759 AND entity_id= 839 AND entity_id= 881", con); cmd.ExecuteNonQuery(); Console.WriteLine("Update Command Executed!"); } }

如上所述,上面的代码不起作用,我希望它如何工作(可能是因为它现在实际上没有做任何事情).只是为了让你们知道,我没有遇到错误.我只是坚持如何做到这一点.

我希望你们中的一个人可以帮助我,或指出我的方向,如果你认为我的问题与另一个问题重复,那就告诉我,我会调查一下! :) 提前致谢.

亲切的问候,

LKS

编辑:

如果你们想知道,this就是我的桌子.
该表包含大约5600行,因此这些行只是顶行.

就像Frederiks的回答一样,你现在要做的就是循环一个表并一遍又一遍地执行相同的Query.

即使你设法让你的代码工作,它也会非常慢(因为你有大约5600行要更新).

所以我的建议是你创建一个包含新值的新表(所以你想在循环之后得到一个).然后只需运行一个更新命令,使用新表中的值更新旧表.

这个选项可能需要几秒钟才能完成,所以速度要快得多!