使用.NET连接到DB2 DB2数据库

时间:2014-09-29 15:08:13

标签: c# .net db2 ibm-midrange

我从开发的.net 4.0应用程序连接到iseries DB2数据库时遇到了一些困难。我一直在尝试使用IBM.Data.DB2.dll库使用以下代码连接到它;

String connectionString = "Database=[DBName];UserID=[UserID];Password=[Password];Server=[ServerName]";
connection = new DB2Connection(connectionString);
connection.Open();

运行connection.Open()命令时收到以下错误:

  

错误[58009] [IBM] SQL30020N执行命令或SQL   语句因通信数据中的语法错误而失败   流将影响后续的成功执行   命令和SQL语句:原因代码" 0x124C"(" 0100")""。   SQLSTATE = 58009

有没有人知道在.net中连接这种数据库的另一种方式?

2 个答案:

答案 0 :(得分:3)

这对我有用:

class Program
{
    static void Main(string[] args)
    {
        string connString = "DataSource=SYSTEM;UserID=USER;Password=PASSWORD";
        iDB2Connection conn = new iDB2Connection(connString);
        conn.Open();

        string cmdString = "CRTPF FILE(TESTLIB/TESTNET) RCDLEN(100)";
        string cmdText = "CALL QSYS.QCMDEXC('" + cmdString + "', " + cmdString.Length.ToString("0000000000") + ".00000" + ")";

        iDB2Command cmd = new iDB2Command(cmdText, conn);
        cmd.ExecuteNonQuery();
        cmd.Dispose();

        conn.Close();
    }
}

答案 1 :(得分:0)

我们正在使用Progress的Data Direct DB2驱动程序。这支持实体框架。也许你可以试试。您可以在线下载评估版(progress.com)