C# Can';t将.NET核心控制台应用程序连接到Db2数据库
我试图将我的.NET Core console应用程序连接到存储在服务器上的Db2数据库,出现以下错误: 尝试连接到数据库时出现错误[42968][IBM]SQL1598N 由于许可问题,服务器失败。SQLSTATE=42968 我已经用以下方法对此进行了测试: ibm.data.db2.core 1.0.0.100 ibm.data.db2.core 1.3.0.100C# Can';t将.NET核心控制台应用程序连接到Db2数据库,c#,.net-core,db2,C#,.net Core,Db2,我试图将我的.NET Core console应用程序连接到存储在服务器上的Db2数据库,出现以下错误: 尝试连接到数据库时出现错误[42968][IBM]SQL1598N 由于许可问题,服务器失败。SQLSTATE=42968 我已经用以下方法对此进行了测试: ibm.data.db2.core 1.0.0.100 ibm.data.db2.core 1.3.0.100 如果要连接到DB2forz/OS或DB2fori-series,请遵循以下建议。您需要一个许可证文件,因为除非您使用DB2C
如果要连接到DB2forz/OS或DB2fori-series,请遵循以下建议。您需要一个许可证文件,因为除非您使用DB2Connect产品(作为网关),否则Z/OS或i-series的每个Db2客户机都必须有一个许可证 从IBM或许可组获得许可证文件后,需要按照说明将其复制到子文件夹
如果您的公司已经安装了可供您访问的DB2Connect网关,那么您可以连接到该网关,而不是直接连接到Z/OS或i-Series。网关将为您处理连接。在这种情况下,您的nuget树中不需要Db2许可证文件。解决许可证问题怎么样?如何解决?您是否安装了运行时Cient或IBM Db2的许可证?请参阅:它说:“首先连接到主机服务器,然后需要DB2Connect许可证。”我不知道,因为我不熟悉DB2。但无论如何,你的问题不是关于编程。这是DB2设置的问题,因此,这里不讨论这个话题。
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();