【问题标题】:Execute simple select query using Rocket U2 Toolkit for .NET使用 Rocket U2 Toolkit for .NET 执行简单的选择查询
【发布时间】:2014-09-15 22:16:38
【问题描述】:

在 command.ExecuteReader() 上执行以下代码失败并出现异常:

"ERROR [] [U2] [UCINET-UO] ERROR [] [U2] [UCINET-UO] [U2][UCINET-UO] [U2][UCINET-UO] XTOOLSUB 子程序失败。登录账号( 2). 无效的帐户名/data/TSSA9. 确保/data/TSSA 帐户在ud_database 文件和UD.ACCOUNT 中列出。Class Name = UDAttribute Method Name = GetAttributes(...) Class Name = UDAttribute Method Name = GetAttributes( ...) 来源:U2.Data.Client 目标站点:U2.Data.Client.NativeAccess.TableInfoForNativeAccess GetTableInformation(U2.Data.Client.U2Command)"

using (var connection = ConnectionFactory.Create())
using (var command = connection.CreateCommand())
{
    command.CommandText = "Select ID From CONTRACTORS;";
    connection.Open();
    using (var reader = command.ExecuteReader())
    {
        while (reader.Read())
        {
            var o = reader[0];
        }
    }
}

public class ConnectionFactory
{
    public const string Password = "****";
    public const string UserName = "****";
    public const string Server = "****";

    public static U2Connection Create()
    {
        var connectionStringBuilder = new U2ConnectionStringBuilder
        {
            UserID = UserName,
            Password = Password,
            Server = Server,
            Database = "/data/TSSA",
            ServerType = "UNIDATA",
            AccessMode = "Native", // FOR UO
            RpcServiceType = "udcs", // FOR UO
            Connect_Timeout = 9000,
            QueryTimeout = 9000,
            PersistSecurityInfo = true,
            Pooling = false
        };

        return new U2Connection
        {
            ConnectionString = connectionStringBuilder.ToString()
        };
    }
}

我使用的是 U2.Data.Client 版本 2.1.0.2051

任何想法或想法将不胜感激。谢谢。

【问题讨论】:

  • 您确认账户 /data/TSSA 确实在 ud_database 文件和 UD.ACCOUNT 中吗?
  • 这是个好问题。不幸的是,我不确定这意味着什么,或者如何检查,或者如果不是,该怎么办。我的印象是,以这种方式连接意味着我不需要更新服务器配置,但显然我错了?

标签: .net u2 unidata u2netdk rocket-u2


【解决方案1】:

感谢您提出这个问题。 确保数据库“/data/TSAA”列在两个位置。

  1. ud_database(见屏幕截图)(在 Windows 中,C:\U2\ud73\INCLUDE\ud_database)
  2. UD.ACCOUNT(见屏幕截图) 一个。登录“系统”帐户 湾。列出 UD.ACCOUNT C。确保那里有“/data/TSAA”条目。

我们将在 V 2.2.0 中修复此问题,以便您无需执行上述额外步骤。

此问题已在 U2 Toolkit for .NET v2.2.0 (BETA) 中得到解决。阅读本文了解更多信息。

Async\Await and Entity Framework 6.1 in Rocket MV U2 Toolkit for .NET v2.2.0 (BETA)

【讨论】:

  • 这些文件是在服务器还是客户端?我们的数据库服务器是一个 unix 盒子。
  • 当我登录 udt 并执行 LIST UD.ACCOUNT 命令时,我得到“不是文件名”。抱歉,我的 unidata 知识相当稀少。
  • 你需要做的,LOGTO sys。有关详细信息,请参阅另一个答案。
  • 我似乎没有权限,因为我收到了 errno=13: Permission denied
  • 能否请您给我们发送电子邮件 u2askus@rocketsoftware.com(收件人:Rajan Kumar)?我们将尝试为您提供更新 UD 的工具。帐户”文件。同时,您可以尝试“模拟”帐户。所以你需要用'demo'替换''/data/TSAA'。我希望在“ud_database”和“UD.ACCOUNT”中都列出了“demo”帐户。
【解决方案2】:

在“:”提示符处输入以下命令

LOGTO系统
列出 UD.ACCOUNT ALL

您可能会看到这样的列表:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多