【发布时间】:2015-10-02 21:05:40
【问题描述】:
有人知道以编程方式确定 sql server 是 mysql 还是 mssql 安装的好方法吗?
我有一个 C# 应用程序,它必须能够连接到 mysql 或 mssql。如果我知道它是哪个,我可以连接到任何一个,但我无法从连接设置中分辨出来,因为我得到的只是服务器名称、用户 ID、密码和数据库名称。
我可以让设置文件存储服务器的类型,但这为我想避免的用户错误开辟了一条途径。
【问题讨论】:
-
select version()。这将适用于 mysql,并为您提供版本号。 mssql 等效select @@version。两者都不应该在相反的系统上工作。 -
解决方法:使用 try/catch 块。尝试使用 SQL Server 驱动程序打开,如果失败,请尝试使用 mySQL 驱动程序打开。翻转它们以首先捕获最常见的连接类型。
-
您使用什么类型的身份验证?如果是用户身份验证,您可以从连接字符串中看出。 MySql = UID 和 Sql Server = 用户 ID
-
他可以通过 ODBC 连接 MSSQL 和 mysql。
-
所以你是说你不能相信你的最终用户通过列表框选择正确的 RDBMS 系统?哇塞。是的,“尝试连接 1...然后另一个”的答案就是你所能做的。
标签: c# mysql sql sql-server