问题标签 [connector-net]

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 投票
2 回答
1930 浏览

c# - 引导顺序不正确

好的,我有一个 GUID f5cc4100-f1b4-4af6-9e9e-224b0eb74166,我正在使用 ADO .NET 连接器将它插入 MySQL 数据库。

我可以通过两种方式做到这一点:

1) 将字节数组馈送到 .NET 连接器

2)依靠MySQL标准函数将十六进制转换为二进制字符串。

我面临的问题是上述两种方法以稍微不同的字符顺序插入相同的 guid。

如果我像这样选择插入的 guid:

f5cc4100-f1b4-4af6-9e9e-224b0eb74166来回0041ccf5-b4f1-f64a-9e9e-224b0eb74166。但是,如果我这样阅读:

我得到0041ccf5-b4f1-f64a-9e9e-224b0eb74166f5cc4100-f1b4-4af6-9e9e-224b0eb74166

简而言之,如果我将 GUID 作为字节数组插入,那么我需要照此读取它们并转换为字节数组以获得正确的 GUID。如果我将 GUID 作为UNHEX十六进制 guid 字符串插入,那么我需要使用其等效HEX函数从 db 中读取。

  1. 为什么上述两种方法的写作和阅读不同?

  2. 在两者之间处理 GUID 的更合适的方法是什么?

0 投票
1 回答
14586 浏览

c# - 如何使用 MySqlCommand 插入多行并准备语句?(#C)

Mysql 举例说明如何使用prepare 语句和.NET 插入行:http: //dev.mysql.com/doc/refman/5.5/en/connector-net-programming-prepared.html

它看起来像那样工作,因为在每次迭代结束时调用cmd.ExecuteNonQuery()::

可以使用这样的准备语句来完成吗:

更多解释::


mysql 示例中的代码(每次迭代中的 cmd.ExecuteNonQuery() ):

*我想要的代码(cmd.ExecuteNonQuery();在所有迭代之后):*

0 投票
3 回答
25183 浏览

mysql - 不支持身份验证方法“mysql_old_password”

更新了 mysql 连接器。Net 到 6.6.4 版提供程序以与 Visual Studio 2012 集成,但现在当我尝试配置与 edmx 的连接时,出现错误“不支持身份验证方法 'mysql_old_password'”。

0 投票
2 回答
1653 浏览

mysql - MySql 5 & LINQ to Entities EF 4 在跨网络查询时导致“对象必须实现 IConvertible”

在 2 个不同的 MySql 安装上使用相同的 MVC 3 和 C# 代码以及相同 MySql 5.5 数据库的副本时。一个工作完美,而另一个失败并出现“对象必须实现 IConvertible”错误。当我对本地 PC 的 MySql 安装运行查询时,查询始终运行良好,但是当我尝试从本地 PC 的 Visual Studio 2010 查询到我的 Internet 服务提供商的 MySql 安装的同一数据库的副本时,我收到错误“对象必须实施 IConvertible”。我在代码中唯一更改的是 web.config 中的 ConnectionString 的服务器名称,否则代码和数据库完全相同。注意:对 ISP 的 MySql 安装的所有其他查询都可以正常工作,只有这个特定的查询不起作用。

在尝试解决此问题几天后,我确信错误消息“对象必须实现 IConvertible”与实际发生的事情无关,而且我还认为我的 ISP 上的 MySql 配置可能以某种方式导致这个问题的原因如下:

  1. 如果这确实是代码中的“对象必须实现 IConvertible”问题,那么无论我安装哪个数据库,该问题都会持续存在于代码中。

  2. 我已经完全从本地 PC 的工作副本中删除并在 ISP 处重新创建了数据库,但仍然收到完全相同的错误。

  3. 最有趣的是,该查询有 3 个嵌套的 IEnumerable 列表,它们的设置方式与 IEnumerables 相同,如果我在查询中注释掉这些嵌套列表中的任何 1 个,则查询会针对 ISP 的数据库成功运行。哪个嵌套列表被注释掉并不重要,只要有 2 个或更少的嵌套列表,然后对 ISP 的数据库的查询就可以工作。这就是让我得出结论,MySql 在 ISP 的配置可能会以某种方式限制我的查询,因为在查询本地 PC 的 MySql 安装时我没有这个问题。错误消息似乎并不适用于实际发生的事情。同样,对 ISP 的 MySql 安装的所有其他查询都可以正常工作,但是它们都不包含超过 2 个嵌套的 IEnumerable 列表,其中这个特定查询包含 3 个?

查询错误“对象必须实现 IConvertible”

LINQ 到实体查询:

产品列表视图型号:

什么可能导致这种行为?这可能是由 MySql 5.5 的数据库配置上的查询阈值设置或网络设置引起的吗?我没有更改任何一个 MySql 5.5 安装的任何默认值。我只是使用标准的 MySql Connector/Net 6.5.4 以及 Microsoft 的标准 MVC 3、C#、Entity Framework 4、LINQ-to-Entities 代码来访问数据库。

非常感谢您对此的任何帮助。谢谢, Atlas361

0 投票
2 回答
2832 浏览

entity-framework - 如何在 Visual Studio 2012 Express for Web 中添加 mysql 数据源

我正在尝试将 mysql 连接添加到我的 asp.net mvc 4 项目,但我在数据源窗口中看不到它。

在为 web 安装了 Visual Studio 2012 Express 之后,我通过 nuget 添加了 mysql Connector/Net。我想添加到 mysql db 的新连接,但我确实在数据源窗口列表中看到了 mysql 数据源。搜索后我意识到我有 v6.6.4 并且它支持 6.6.5 所以我从 nuget 卸载它并从 mysql 网站安装 6.6.5(完整安装)。它没有帮助..我也尝试卸载并重新安装它,但它没有改变任何事情。

我该如何解决这个问题?

0 投票
2 回答
758 浏览

mysql - MySQL 实体提供程序:“连接太多”

在我们的 ASP.NET 应用程序中,我们实现了一个构建在 MySQL 之上的数据层,它使用Connector/NET来实现实体框架。

这对于我们的大多数 CRUD 操作都非常有效,但是当我们运行包含数百条记录的 INSERT 语句时,它会引发“连接太多”异常。

虽然我接受我们正在进行大量单独的读/写调用(我们在每次插入之前查询重复条目,而且还有一个审计日志,它也使用每个插入的单独查询写入)但不应该连接游泳池照顾这个?

此外,在这个类似的线程中,OP 被告知使用我完全同意的using语句,在我们的例子中,每个查询已经包含在using语句中,我假设它正在以有效的方式管理连接:,不处理如果另一个请求已排队,则它们。

无论如何,connect timeout目前是 50,这已经很小了,对吧?将其移至 500 没有任何区别,而将其移至 10 在引发相同异常之前使我的插入量增加了大约 50%。

那么,鉴于 DbContext 的每个实例都包含在using语句中,为什么我们会收到“连接太多”异常?

更新:我们发现问题的根源实际上是由我们的一个存储库在其构造函数中打开数据库连接引起的,即使该连接从未使用过。对不起,伙计们,这原来是一个红鲱鱼。感谢您的建议。

0 投票
1 回答
1324 浏览

mysql - MySQL 连接器 6.7.4 实体框架 5 模型优先

我正在使用 Visual Studion 2012、MySQL 5.6.14、Connector for .NET 6.7.4 和 Visual Studio 插件 1.0.2

我创建了一个实体框架,但无法让“从模型生成数据库”工作。

我已经尝试过这里建议的修改

http://bugs.mysql.com/bug.php?id=67964

但现在我得到了下面的异常(看起来好像没有通过凭据)。有没有人经历过这个?

0 投票
2 回答
3350 浏览

mysql - 使用 Connector/NET 和 Visual Studio 2013 Express 引用 MySQL

我正在重建一个Visual Studio 2008项目Visual Studio 2013 Express。我安装了最新的社区版本,MySQL for Windows (5.6.14)即使在添加对最新MySql.Data程序集 ( 6.7.4 version 4.0) 的引用后,仍会出现以下错误。

奇怪的是错误信息是指版本 6.2.3.0。然后我卸载Connector/NET了安装的一部分,MySQL for Windows然后安装了“独立”版本的Connector/NET 6.7.4. 出现相同的错误消息。通过浏览到程序集添加引用Connector/NET 6.7.4 version 4.0似乎也没有安装引用,并且出现相同的错误。我该如何解决?

怀疑可能是最新的 Express IDE 是问题所在,我做了以下操作。

我卸载VS 2013 Express了,卸载了单机版Connector/NET,卸载了MySQL for Windows再安装Visual C# Express 2010再重新安装MySQL for Windows 5.6.14。出现同样的问题。

0 投票
1 回答
791 浏览

mysql - MySQL 连接器/NET 输出参数返回 NULL

使用以下代码:

使用以下存储过程:

从控制台运行它会返回“27”:

但是在 .NET 中,当执行查询时(当连接仍然打开时),curParam.value 返回 NULL。

否则,存储过程会返回正确的结果。此外,直接在控制台中运行存储过程时,输出参数也会正确返回。

我错过了什么吗?

0 投票
1 回答
1779 浏览

mysql - 范围 '?' 必须定义

我制作了一个简单的 ASP.NET 应用程序来管理 MySQL 数据库。我一直在使用 Visual Studio 2013 及其自动生成的元素,例如 DetailsView、GridView 等。该应用程序在本地运行良好(包括对我的网站托管的 MySQL 服务器的查询),但是当我在我的 webhotel 上尝试该应用程序时,我得到了错误:

范围 '?' 必须定义

我一直在联系客户支持,他们声称这不是服务器问题,而是脚本问题(尽管我说它在本地运行良好)。

.aspx 页面中我的 SqlDataSource 的示例如下所示:

根据 MySQL 自己的错误站点,这是 MySQL 连接器早期版本中的一个问题:

http://bugs.mysql.com/bug.php?id=66060

但是我们使用的是 6.8.3 版本。我发现的另一个看似可行的解决方案是

http://blog.tjitjing.com/index.php/2009/05/mysqldatamysqlclientmysqlexception-parameter-id-must-be-defined.html

但无济于事。还有,好像

非常感谢任何和所有的帮助,因为我无计可施。谢谢