【问题标题】:Is there a default SQL Driver included with the .NET Framework?.NET Framework 中是否包含默认 SQL 驱动程序?
【发布时间】:2009-07-01 18:57:39
【问题描述】:

我正在寻找的是包含在 .NET 运行时中以在我的连接字符串中引用的驱动程序 (DRIVER={ ... })。

我目前正在引用“MySQL ODBC 3.51 驱动程序”,但这必须安装在目标计算机上。我不反对重新分发驱动程序,但如果有一个我可以使用的内置于 .NET 中的驱动程序,我宁愿走这条路。

谢谢!

【问题讨论】:

  • 为什么引用哪个驱动程序很重要?引用虚拟驱动程序或连接字符串为空白是否有问题?
  • 如果我把驱动留空,机器连接SQLServer失败
  • 那我真的不明白你在问什么。如果要连接到 SQL Server,则需要 SQL Server 连接字符串。没有使用哪个驱动程序的问题。将一个用于 SQL Server。它随 .NET 一起提供。听起来您使用 MySQL 进行开发,然后想在生产中使用 SQL Server。伟大的。在部署到生产之前更改连接字符串,或者在部署之后但在第一次使用代码之前更改连接字符串。

标签: .net sql


【解决方案1】:

框架中包含用于 SQL Server 和 Oracle 的驱动程序,但没有用于 MySQL 的驱动程序。

但是,我怀疑有一个standalone .NET driver 不需要安装。请注意,它是 GPL - 如果您的应用不是 GPL 应用,您应该非常仔细地检查许可证,或者寻找其他类似的驱动程序。

【讨论】:

    【解决方案2】:

    我相信在安装 .NET 运行时时会安装 MSSQL ADO.NET 提供程序(驱动程序),但看起来您正在使用 MySql。最好的办法是使用 MySql 的 .NET ADO.NET Provider(不是 ODBC 驱动程序),它被称为 MySql Connecter/.NET。从技术上讲,ado.net 提供程序仍然必须驻留在调用数据库的机器上(即 - Web 服务器或客户端工作站),但您不必“安装”它......您可以将它与您的通过xcopy或ClickOnce等应用程序...我相信您所说的ODBC驱动程序必须通过安装exe或msi安装。此外,ODBC 既旧又慢,除非有特定要求,否则不应使用它。使用这个:

    http://dev.mysql.com/downloads/connector/net/6.0.html

    您将能够像使用 MS SQL Server 一样使用 ado.net。

    这也适用于我相信的实体框架。

    【讨论】:

    • 哦,还有一些使用 ado.net 接口的提示/提示代码,使您的应用程序数据库不可知(即它可以使用 mysql、mssql 或 postgres 与单个代码库)。很酷的东西。
    猜你喜欢
    • 2011-02-17
    • 1970-01-01
    • 1970-01-01
    • 2015-10-25
    • 2011-04-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-04
    相关资源
    最近更新 更多