同步数据库中的Oracle数据库用户

时间:2013-10-03 11:26:57

标签: sql database oracle nhibernate sql-server-ce

好的,我有一点问题...... 在我的项目中,我们有一个Oracle SQL Server。在数据库中,我可以访问其他一些用户表:

Tables:
  |-bla
  |-bla
Users:
  |-otherUser (let's just call him that)
      |-Tables:
          |-aTable

在Oracle中,要访问aTable表,我使用SELECT * FROM otherUser.aTable

现在,我们还有一个MS SQL CE数据库,我使用MS Sync f / w从OracleDB同步数据。在CE db中 - 同步后 - 我得到一个表otherUser.aTable。这听起来不错,所以即使CE没有用户概念,它也会添加相同的表格。

但问题是当在CE上调用与在Oracle上相同的SQL查询时,我得到表名无效错误。相反,如果我想获得表格的内容,我发现的两种方式是使用[]或“”围绕otherUser.aTable

然而,它们似乎都不适用于Oracle。 []似乎是一个非法的名称,“”似乎搜索一个只是那个(不是其他用户)的表。

那么我为什么不在Oracle上使用单向方式而在CE上使用另一种方式呢?我也使用NHibernate作为ORM,它需要两个数据库相同的表名...

是否有第三种方法来封装与Oracle中的用户一起使用的表名,并且只适用于CE?或者你有其他方法可以解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

我没有使用MS SQL的经验,但它看起来像是Oracle方面的同义词可能解决的问题。 尝试为Oracle中的otherUser.aTable创建同义词“otherUser.aTable”。