问题标签 [mysqldatareader]
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.
c# - 从 JSON 填充多个对象
我有这个代码:
我如何将c1.*
select 的字段映射到 generic Customer customer_1
,然后再u1.*
映射u2.*
到customer_1
的属性?Newtonsoft.Json.JsonConvert.PopulateObject
不让我这样做。
中间json_string
看起来像:
结果必须是由以下内容组成的列表:
Customer(with id=1)
,User1(8,"manuel")
和User2(2,"michael")
;Customer(with id=2)
,User1(3,"friedrich")
和User2(6,"antony")
.
c# - 与已发布的已安装应用程序相比,代码的调试版本运行速度快 10 倍
与在 VS 2107 调试对话框模式下运行相同代码相比,使用已安装的应用程序发行版时,我的一个函数在同一台计算机上的运行速度要慢 10 倍。很明显,调试模式做了一些事情或预加载了一些有助于代码运行得更快的事情,我不知道它是什么?
我试图让代码更高效,但这无济于事,因为问题与代码的复杂性无关,它实际上很简单。
c# - C# MySQLDataReader 返回列名而不是字段值
我正在将 MySQLClient 与本地数据库一起使用。我写了一个方法,它返回一个关于用户的数据列表,我在其中指定我想要数据的列,并动态生成查询。
但是,读者只返回列名而不是实际数据,我不知道为什么,因为当用户登录时,相同的方法以前在程序中有效。
我正在使用参数化查询来防止 SQL 注入。
这是我的代码。我已经删除了与问题无关的部分,但如果需要,我可以提供完整的代码。
我尝试过的: - 使用 getstring - 使用索引而不是列名 - 指定特定的列名 - 使用 while (reader.Read) - 请求不同数量的列
我在登录部分使用了这种方法,它在那里工作得很好(下面的代码)。我不知道为什么它在这里也不起作用(上面的代码)。
c# - 如何为每个读取 ID 执行另一个 MySqlDataReader?
我正在尝试从我的数据库中获取一些data
,每个data
可能都有一些attributes
,所以我的逻辑是当我得到所有data
的时候,所以在执行时我将为我得到MySqlDataReader
的每个数据执行查询。id
attributes
但是我遇到了错误:'已经有一个与此连接关联的打开的 DataReader' 所以我的猜测是我不能同时运行MySqlDataReader
so 在这一点上,这将是获得attributes
每个的最佳方法data
?
我应该在将每个元素添加到列表后循环使用Plu
它们还是有更好的解决方案?
这是我获得data
(Plu 对象)的函数
这是函数 Attributi,它attributes
为每个返回 IEnumerablePlu
c# - 使用 MySqlDataReader C#
我正在尝试使用 mysqldatareader 在 C# Visual Studio 中填充一些文本框。我已经创建了连接字符串并创建了 MySqlDataReader 命令。
但是当我单击按钮进行操作时,它会显示一个消息框,上面写着:“在调用 Read() 之前访问字段的尝试无效”
这是我的代码:
c# - 将 XLS 转换为 PDF:GetBytes() 期间出现“数据索引必须是字段中的有效索引”异常
我有一个将文件转换为 PDF 的应用程序。它首先将来自 MySQL 的 blob 保存到临时文件中,然后将该临时文件转换为 PDF。仅当我尝试转换 XLS 文件时,才会在 GetBytes() 处收到此“数据索引必须是字段中的有效索引”异常错误。其他文件类型(BMP、XLSX、DOC、DOCX 等)都可以转换。
datetime - 获取异常输入字符串的格式不正确
我正在使用 ASP.NET C# 构建 Windows 服务。我正在尝试使用 MySqlCommand 对象从 MySQl 数据库中进行调用。我尝试从数据库中名为 tbl_patient 的表中检索数据。当我将以下查询传递给 MySQlCommand 对象时:
它有效,这意味着我检索数据,但是,当我将查询更改为该查询时:
我不断收到错误:输入字符串的格式不正确,我猜错误是由于数据读取器尝试读取查询返回的行时 tbl_patient 中的这些日期时间字段,有人可以帮我解决这个问题吗?
这是我的方法的完整代码片段,它试图从 tbl_patient 获取记录以便更好地了解我的情况,我将它添加到引发异常的查询中:
c# - SqlBulkCopy、MySqlDataReader、BLOB 和 IndexOutOfRangeException
因此,在将 MySqlDataReader 与 BLOB 列一起使用时,我遇到了臭名昭著的IndexOutOfRangeException 。我的情况虽然很具体。故事如下。我首先通过执行命令获取 MySqlDataReader,然后将其传递给 SqlBulkCopy 以进行“流式”批量插入,从而将数据从 MySQL 拉入 SQL Server。代码简单明了:
一切正常,但是,在 MySQL 方面,我有 2 个带有 BLOB 列的表,这就是问题开始的地方。加载这些表时,它会抛出:
因此,据我了解,SqlBulkCopy 决定自己必须调用 GetBytes() 方法来流式传输 BLOB 列的数据,这就是我得到这个异常的地方。由于特定原因,我绑定到版本 8.0.15 的 MySql.Data 库。因此,即使它在较新的版本中得到修复,我也必须以某种方式自己处理它。我的想法是以某种方式覆盖 GetBytes() 以克服这个问题。
由于 MySqlDataReader 是密封的,因此无法从它继承。所以,我正在考虑使用装饰器模式并喜欢:
那么,我该如何正确执行 GetBytes() 呢?即在我的 MySqlDataReaderFixed 类中应该有什么:
有人可以帮忙吗?或者,也许还有另一种解决问题的方法,考虑仍然使用 MySqlDataReader(来自 MySql.Data v 8.0.15.0)和 SqlBulkCopy?
c# - 用Mysql datareader多次读取一列的内容
我正在创建一个控制台应用程序,它输出“密码”列和“用户名”列的内容。有谁知道每次密码和用户名行上出现新数据时我如何重写输出?
我曾想过每次都重新创建实例并以MySqlDataReader
这种cmd.ExecuteReader()
方式重新分配:
但这给出了这个错误:
MySql.Data.MySqlClient.MySqlException (0x80004005):已经有一个打开的 DataReader 与此 Connection 关联,必须先关闭。在 MySql.Data.MySqlClient.Interceptors.ExceptionInterceptor.Throw(Exception 异常) 在 MySql.Data.MySqlClient.MySqlConnection.Throw(Exception ex) 在 MySql.Data.MySqlClient.MySqlCommand.Throw(Exception ex) 在 MySql.Data.MySqlClient .MySqlCommand.CheckState() 在 MySql.Data.MySqlClient.MySqlCommand.ExecuteReader(CommandBehavior 行为) 在 MySql.Data.MySqlClient.MySqlCommand.ExecuteReader() 在 showaph.Program.Main(String[] args) 在 C:\Users\ utente\source\repos\showaph\Program.cs:riga 51
我该怎么解决?
这是我的完整代码: