在本地机器上创建目录

Creating Directories on a local machine

在 PL/SQL 中是否有任何选项在本地 PC 中使用已连接的数据库名称创建目录?

host mkdir C:\TestDir\ || select name from v$database;

输出应如下所示:C:\TestDir\MySampleOraDatabaseName

谢谢!

您可以使用从查询中设置的替代变量;这是来自 SQL*Plus 但同样的事情应该在 PL/SQL 开发者:

column x_name new_value y_name
select name as x_name from v$database;
host mkdir C:\TestDir\&y_name

真正的 name 值被赋予别名 x_name,并且 column ... new_value 子句使该值可用作 &y_name。 (当然你可以选择你自己的aliases/names。)

或在变量中包含完整路径:

column x_path new_value y_path
select 'C:\TestDir\' || name as x_path from v$database;
host mkdir "&y_path"

我已将完整路径用引号引起来,以防您的真实目录包含空格。

然后您可以在假脱机命令等中使用相同的替换变量

不能做的是在你的本地客户端机器上有一个目录,它是数据库目录对象的目标——那些必须是打开的,或者至少是可见的至,数据库 运行 所在的服务器。不过那可能不是你的目标。