Oracle sqldeveloper SQL Developer在一台计算机上返回查询结果,但在另一台计算机上不返回

Oracle sqldeveloper SQL Developer在一台计算机上返回查询结果,但在另一台计算机上不返回,oracle-sqldeveloper,Oracle Sqldeveloper,我可以在SQL Developer 3.1.07中对视图运行查询,它会返回我期望的结果。我的同事在墨西哥使用同一个用户,他可以连接到同一个数据库,看到相同的视图,运行相同的查询,甚至从一个简单的“select*from VIEWNAME”查询中也得不到任何结果。显示列标题,但不显示数据。如果他从“连接”窗口选择视图并选择“数据”选项卡,则不会显示任何数据。此用户无权访问此特定数据库上的任何表 我不确定他运行的是同一版本的开发人员,但这并不遥远。我已经在SQLDeveloper中检查了很多我认为可

我可以在SQL Developer 3.1.07中对视图运行查询,它会返回我期望的结果。我的同事在墨西哥使用同一个用户,他可以连接到同一个数据库,看到相同的视图,运行相同的查询,甚至从一个简单的“select*from VIEWNAME”查询中也得不到任何结果。显示列标题,但不显示数据。如果他从“连接”窗口选择视图并选择“数据”选项卡,则不会显示任何数据。此用户无权访问此特定数据库上的任何表

我不确定他运行的是同一版本的开发人员,但这并不遥远。我已经在SQLDeveloper中检查了很多我认为可能是问题的设置,但是在他的设置和我的设置中没有看到明显的差异

连接到另一个数据库允许他访问表和视图中的数据


对我们缺少的东西有什么想法吗?

从您的oracle主页复制JDBC文件夹,并将其复制到您的c-workers机器上。我们遇到了同样的问题,替换JDBC文件夹也起了作用。

我知道我晚了几年,但请检查底层视图是否没有过滤基于本地化的内容!我刚刚遇到了这个问题,结果是这样的一个陈述引起了问题:

SELECT * 
FROM sometable
WHERE language = userenv('LANG') 

当我选中“跳过NLS设置”框时,解决了相同的问题。我的查询之前返回的结果为零,但是当我再次运行相同的查询时,我可以看到表中的行


由于您的同事在不同的国家/地区,很可能是NLS设置(与语言相关)造成的。

是否以同一用户身份连接?只是为了消除明显的问题,因为你没有提到。不同的用户拥有自己的表副本似乎是可能的,因此需要排除这种可能性。这使得它们当然不是“相同”的表,但仍然…当然,谢谢Alex,是的,我们都使用相同的用户信息访问数据库。“Sql数组获取大小”的值为100。列元数据确实显示。以脚本形式运行查询将返回“未选择行”。实际上,它们是视图而不是表(我们两人都无法访问此特定数据库中的任何表。我确实从他的计算机连接到了另一个数据库,并且能够从表和视图的查询中获得结果。原始问题已使用此信息编辑,这是一个难解的问题。它似乎不是客户端设置,除非在连接设置中,如果只有一个数据库受到影响。我想视图可能会使用
sys\u context
作为一种VPD进行过滤,基于操作系统用户或IP,但这听起来不太可能。我想不出任何原因,同一数据库上的同一Oracle用户会基于客户端具有不同的数据可见性。很有趣。我能够在我的环境中确认这一点在运行查询之前将我的db explorer的语言更改为其他语言。谢谢您的提示!