如何在 Oracle SQL Developer 中查询数据库名称?

Posted

技术标签:

【中文标题】如何在 Oracle SQL Developer 中查询数据库名称?【英文标题】:How to Query Database Name in Oracle SQL Developer? 【发布时间】:2012-02-17 04:20:48 【问题描述】:

我尝试了以下方法,但都失败了:

SELECT DB_NAME();

SELECT DATABASE();

为什么这些基本的 mysql 查询在 SQL Developer 中会失败?甚至这个也失败了:

show tables;

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

select * from table_name_here;

编辑 2: 数据库类型是 Oracle,这就是 MySQL 查询失败的原因。我认为它与数据库客户端有关,而不是与数据库本身有关。我错了。我会把这个问题留给其他和我一样迷失的人。

【问题讨论】:

基本SQL每个人都有自己的扩展,mysql也不例外。 我越来越意识到这一点!这是使用 Oracle 数据库。我不确定它是否还有其他名称。 当我发现我运行的是 Oracle 数据库而不是 MySQL 数据库后,我就明白了:select * from v$database;select ora_database_name from dual; 如果您要减去该问题,请说明原因。完全合理的问题,因为当我问它时我不知道答案,这里的讨论引导我找到答案。 @MatthewDoucette:甚至不知道您连接到什么 RDBMS 可能会让人们浪费时间试图找出您的问题。我能理解为什么人们会对此持负面看法。正如您所说,一旦您意识到您正在与 Oracle 服务器对话,找到问题的答案就很简单了。 【参考方案1】:

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

select * from v$database;

select ora_database_name from dual;

两个都试试。来源和来源:http://www.perlmonks.org/?node_id=520376。

【讨论】:

注意:显然这些的安全权限是不一样的。在我的情况下,从双重工作中选择 ora_database_name,另一个得到一个无效的表错误。【参考方案2】:

试试这个:

select * from global_name;

【讨论】:

这允许通过 dblink 进行查询:select global_name from global_name@dblink_identifier【参考方案3】:

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

select name  from v$database;

如果您需要有关数据库的任何其他信息,那么首先要知道哪些是可用的列名称

describe v$database;

并选择您要查看的列;

【讨论】:

【参考方案4】:

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

【讨论】:

【参考方案5】:

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

检查您是否可以实际连接到 DB(是否放置了驱动程序?在创建时测试了 conn?)。

如果是这样,请尝试使用 F5 运行这些查询

【讨论】:

我可以连接到它并运行查询,并且已经使用了几个月。刚刚在问题中添加了这一点。 答案是,一旦我意识到我正在运行一个 Oracle 数据库:'select * from v$database;'和/或“从双重选择 ora_database_name;”【参考方案6】:

要查看数据库名称, 启动;

然后输入 显示参数db_name;

【讨论】:

【参考方案7】:

描述数据库名称;您需要指定数据库的名称,结果将包括每个属性的数据类型。

【讨论】:

以上是关于如何在 Oracle SQL Developer 中查询数据库名称?的主要内容,如果未能解决你的问题,请参考以下文章

如何安装pl/sql developer

如何安装pl/sql developer

如何在 SQL Developer 中检查语法 Oracle 存储过程?

oracle 客户端 sql developer 如何修改jdk版本

如何在 Oracle SQL Developer 中查询数据库名称?

如何在 oracle sql developer 中运行存储过程?