我在从 u2.net 工具包访问 UniData 数据时遇到问题。我能够正常连接 - 已经使用“测试连接工具”测试了连接,并且在代码中,两个连接都工作正常。我的问题是当我尝试填充数据集时 - 使用示例代码:我收到此错误:
[U2][UCINET][UNIDATA]:You have no privilege on file THENAME
代码如下:
U2Connection con = new U2Connection();
try
{
U2ConnectionStringBuilder conn_str = new U2ConnectionStringBuilder();
conn_str.UserID = "id";
conn_str.Password = "pwd";
conn_str.Server = "srv2";
conn_str.Database = "DB.XXX";
conn_str.ServerType = "UNIDATA";
conn_str.RpcServiceType = "udserver";
con.ConnectionString = conn_str.ToString();
con.Open();
DataTable schema = con.GetSchema();
U2DataAdapter da = new U2DataAdapter("SELECT * FROM THENAME ", con);
DataSet ds = new DataSet();
da.Fill(ds);
}
catch (Exception ex)
{
string lStr = ex.Message;
}
finally
{
con.Close();
还要注意一点,我有一个 ODBC 连接设置。通过 ODBC,我可以在 SQL Server 链接服务器内使用相同的凭据来成功访问相同的查询。 任何想法将不胜感激。
最佳答案
默认情况下,UniData 授予不通过 SQL 访问文件的权限。
您需要从数据库运行CONVERT.SQL
以授予该文件权限。
您可以通过在命令行上运行 HELP CONVERT.SQL
或 reading the manuals 来了解有关该命令的更多信息。 .
关于sql - 通过 .net 访问 UniData,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12962989/