我想弄清楚,如何从SQLDeveloper中的两个不同的oracle数据库中加入表,我目前只能相互隔离/分开访问。 问题是:我们公司限制了CREATE DATABASE LINK权限,所以没有机会以这种方式完成。 (数据库是只读数据库)。 有没有其他方式加入数据库?它仅用于诊断和数据流观察。
任何帮助或提示表示赞赏。
亲切的问候。
答案 0 :(得分:2)
这里的sqldev / sqlcl中的@RunWith(SpringRunner.class)
@SpringBootTest()
@ContextConfiguration(initializers = MyApplicationContextInitializer.class)
@AutoConfigureMockMvc
public class SimpleTest {
@Autowired
private MockMvc mockMvc;
@Test
public void testEntityFiltering() throws Exception {
this.mockMvc.perform(get("/v1/issues").param("fields", "id"))
.andExpect(status().isOk())
// There should be only one field in the returned objects
.andExpect(jsonPath("$[0].length()").value(1));
}
}
命令可以提供帮助。此命令接受3个参数
执行时,该工具将通过jdbc连接到远程数据库。发出sql。检索查询的结构以获取元数据以创建指定的本地新表。然后在迭代远程查询的结果集时批量插入本地表。
小心!此命令仅创建表。任何索引都需要手动添加。
以下是一个完整的例子:
java.lang.IllegalStateException: Failed to load ApplicationContext
...
Caused by: java.lang.IllegalStateException: org.springframework.web.context.support.GenericWebApplicationContext@4116aac9 has not been refreshed yet
at org.springframework.context.support.AbstractApplicationContext.assertBeanFactoryActive(AbstractApplicationContext.java:1067) ~[spring-context-4.3.13.RELEASE.jar:4.3.13.RELEASE]
at org.springframework.context.support.AbstractApplicationContext.getBeansOfType(AbstractApplicationContext.java:1187) ~[spring-context-4.3.13.RELEASE.jar:4.3.13.RELEASE]
at com.renault.api.examples.springboot.MyApplicationContextInitializer.initialize(MyApplicationContextInitializer.java:28) ~[classes/:na]
at org.springframework.boot.SpringApplication.applyInitializers(SpringApplication.java:567) ~[spring-boot-1.5.9.RELEASE.jar:1.5.9.RELEASE]
at org.springframework.boot.SpringApplication.prepareContext(SpringApplication.java:338) ~[spring-boot-1.5.9.RELEASE.jar:1.5.9.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:301) ~[spring-boot-1.5.9.RELEASE.jar:1.5.9.RELEASE]
at org.springframework.boot.test.context.SpringBootContextLoader.loadContext(SpringBootContextLoader.java:120) ~[spring-boot-test-1.5.9.RELEASE.jar:1.5.9.RELEASE]
at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContextInternal(DefaultCacheAwareContextLoaderDelegate.java:98) ~[spring-test-4.3.13.RELEASE.jar:4.3.13.RELEASE]
at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:116) ~[spring-test-4.3.13.RELEASE.jar:4.3.13.RELEASE]
... 25 common frames omitted
答案 1 :(得分:1)
据我所知,您执行需要数据库链接才能执行您所要求的操作。如果您无法创建它,我担心您无法做到这一点,因为数据库无法通过其他方式看到对方。
如果这些是同一个数据库中的两个不同用户(模式),那么您只需要选择并享受。
也许您的公司将不得不重新考虑允许您使用数据库链接。或者,至少允许一次,以便您(或DBA)可以创建链接,然后撤消CREATE DATABASE LINK(但它已经存在,您将能够用它)。