【发布时间】:2010-09-07 11:17:59
【问题描述】:
我在基于 .net 2.0 的 Windows 应用程序中遇到 Oracle 查询问题。我正在使用System.Data.OracleClient 连接到oracle 数据库。数据库名称为myDB。在我正在使用的连接字符串下方:
Data Source=(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)
(HOST = 172.16.0.24)(PORT = 1522)))(CONNECT_DATA =(SERVICE_NAME = ORCL)));
User ID=myDB;Password=myDB;Unicode=True
如果我运行下面的查询,那么它会给我错误的结果(这里错误的结果意味着不正确的数据。数据不属于 myDB):
SELECT ID, NAME
FROM MyTempTable
WHERE ID IN (10780, 10760, 11890)
但如果我将数据库名称与它一起附加,它会给出正确的结果:
SELECT ID, NAME
FROM "myDB".MyTempTable
WHERE ID IN (10780, 10760, 11890)
我的限制是我不能附加数据库名称,因为这是一个通用应用程序,可以在运行时与任何数据库一起运行。请帮忙。
【问题讨论】: