无法将.NET Core控制台应用程序连接到Db2数据库

时间:2019-01-25 11:02:44

标签: c# .net-core db2

我试图将.NET Core控制台应用程序连接到服务器上存储的Db2数据库,但出现此错误:

  

错误[42968] [IBM] SQL1598N尝试连接到数据库   服务器由于许可问题而失败。 SQLSTATE = 42968

string c2 = "Server=xxx.xxxx.xx.xx:446; Database=XXX; UID=XXX; PWD=XXX";

try
{
    using (var connection = new DB2Connection(c2))
    {

        connection.Open();

        using (var command = connection.CreateCommand())
        {
            command.CommandText = "SELECT *FROM IMMO_OPE";

            using (var reader = command.ExecuteReader())
            {
                while (reader.Read())
                {
                    Console.WriteLine(reader.GetString(0));
                }
            }
        }
    }
}
catch(Exception ex)
{
    Console.WriteLine(ex.Message);
}

Console.Read();

我已经用:

  

ibm.data.db2.core 1.0.0.100

     

ibm.data.db2.core 1.3.0.100

1 个答案:

答案 0 :(得分:1)

如果要连接到Zb / OS的Db2或i系列的Db2,请遵循建议here。您需要一个许可证文件,因为除非使用Db2连接产品(作为网关),否则Z / OS或i系列的每个Db2客户端都必须具有许可证。

从IBM或许可小组获得许可文件后,您需要按照here的说明将其复制到子文件夹中。

如果您的公司已经安装了可访问的Db2连接网关,则可以连接到该网关,而不必直接连接到Z / OS或i系列。网关将为您处理连接。在这种情况下,您的nuget树中不需要Db2许可证文件。