在超级用户类型用户上运行vb.net程序的问题

时间:2014-05-02 00:08:02

标签: vb.net parameterized-query windowsdomainaccount

我已经在vb.net中编写了一个程序,用于连接到Progress OpenEdge数据库的内部使用。现在我有一个非常奇怪的运行时问题。

我有一个.exe文件在我的本地C:驱动器,服务器的C:驱动器上运行,来自某个网​​络位置(但不是网络上的其他位置),对于至少两个普通用户来说就好了。问题在于,当我将其提交给我的IT经理进行审核时,她会将其退回并表示它甚至不会运行;在查看错误时,它似乎在第一个选择查询(在表单完成加载之前发生)失败。具体来说,它最终归结为以下错误:

System.Data.Odbc.OdbcException: ERROR [HY000] [DataDirect][ODBC Progress OpenEdge Wire Protocol driver]Number contains an invalid character: ?

错误[HY000] [DataDirect] [ODBC Progress OpenEdge Wire Protocol驱动程序] Number包含无效字符:?

现在,当然,我正在使用visual studio和参数化查询中的数据源。所以,是的,如果它试图将它作为直接 SQL运行而不是像它应该的那样填充参数,那么 是一个数字字段中的问号。我的问题是:为什么相同的.exe,在同一个地方,由具有更高权限的用户运行抛出错误?

2 个答案:

答案 0 :(得分:0)

如果您仍然遇到问题或尚未验证解决方案,可以查看有关SQL跟踪的知识库文章,以确保这些语句的解释/执行是正确的。 http://ow.ly/AuM2L

假设SQL语句的所有内容都相同,问题很可能就是运行.exe的方式。根据.exe的运行方式,可能会填充字母字符而不是数字输入。

希望这有帮助!

答案 1 :(得分:0)

您是否使用零(0)初始化整数变量。正在进行的问号意味着未知的价值。