2012-01-23 98 views
23

如何查询Oracle SQL Developer中的数据库名称?我曾尝试以下,他们都失败:如何查询Oracle SQL Developer中的数据库名称?

SELECT DB_NAME();

SELECT DATABASE();

为什么这些基本的MySQL查询在SQL Developer中失败?即使是这样一个失败过:

show tables;

编辑:我可以连接到数据库并运行查询,如:

select * from table_name_here;

编辑2:数据库类型是Oracle ,这就是为什么MySQL查询失败。我认为这与数据库客户端而不是数据库本身有关。我错了。我会像其他人一样丢掉问题,就像我一样迷路。

+2

每个人都有自己的基本SQL扩展,mysql也不例外。 –

+0

我越来越意识到这一点!这是使用Oracle数据库。我不确定是否有另一个名字。 – Xonatron

+2

当我认识到我运行的是Oracle数据库而不是MySQL时,将它想象出来:'select * from v $ database;'''select'from dual;' – Xonatron

回答

45

一旦我意识到我是运行Oracle数据库,而不是MySQL的,我找到了答案

select * from v$database;

select ora_database_name from dual;

试一试。信用和来源去:http://www.perlmonks.org/?node_id=520376

+1

注:显然这些安全权利是不一样的。在我的情况下,从双作品中选择ora_database_name,另一个获得无效的表错误。 – Jeff

0

编辑:哎呀,在回答之前没有检查你的问题标签。

检查您是否可以实际连接到数据库(驱动程序是否已放置?在创建它时测试了连接点?)。

如果是这样,尝试runnung这些查询与F5

+0

我可以连接到它并运行查询并持续数月。刚才在问题中补充说。 – Xonatron

+0

答案,一旦我意识到我正在运行Oracle数据库:'select * from v $ database;'和/或'从双选择ora_database_name';' – Xonatron

11

试试这个:

select * from global_name; 
+0

这允许甚至通过dblink查询: 'select global_name from global_name @ dblink_identifier' – davitof

0

要查看数据库名, 启动;

然后键入 show parameter db_name;

3

您可以使用以下命令来知道数据库的名称,而不显示额外的列。

select name from v$database; 

如果您需要了解数据库的任何其他信息则先知道哪些是使用

describe v$database; 

提供的列名,并选择您希望看到的列;

1

我知道这是一条旧线程,但您也可以从V$INSTANCE视图获取一些有用的信息。 V$DATABASE显示来自控制文件的信息,V$INSTANCE视图显示当前实例的状态。

0

DESCRIBE DATABASE NAME;您需要指定数据库的名称,结果将包含每个属性的数据类型。

+0

你确定你拼写正确吗? –

相关问题