SQL c#决定SQL server的类型

本文关键字:SQL 类型 决定 server | 更新日期: 2023-09-27 18:15:40

是否有人知道一个好方法,编程,以确定如果一个sql服务器是mysql或mssql安装?

我在c#中有一个应用程序,必须能够连接到mysql或mssql。如果我知道它是哪个,我就可以连接到哪个,但我无法从连接设置中判断,因为我得到的只是服务器名、用户id、密码和数据库名。

我可以让设置文件存储服务器的类型,但这为我希望避免的用户错误开辟了一条途径。

SQL c#决定SQL server的类型

尝试以MySQL连接,如果失败,优雅地处理错误,然后尝试以MSSQL连接。类似的东西可能对你有用…

string FindDbType(string connectionString)
{
    try
    {
        // try to connect with MySql
        return "MySql";
    } catch()
    {
        try
        {
            // try to connect with MSSQL
            return "MSSql";
        } catch()
        {
            return "Cannot determine DB Type"
        }
    }   
}

您可能希望单独处理诸如密码不正确之类的错误,但这应该是您开始的基础。

创建表configsettings,并将其记录为DB类型。(如果你访问的数据库是你自己的)