我有数百行代码来创建表,但模式名称是硬编码的,如所有 DDL 语句中的 SCHEMA_NAME1.TABLE_NAME 。我怎样才能将其作为变量并在所有地方使用,以便我们可以轻松地在一个地方更改 SCHEMA_NAME 要求的多个位置。请给出您的想法。
create table SCHEMA_NAME1.TABLE_NAME1(....);
create table SCHEMA_NAME1.TABLE_NAME2(....);
create table SCHEMA_NAME1.TABLE_NAME3(....);
我想要这样的东西
var SCHEMA_NAME_VALUE ;
create table SCHEMA_NAME_VALUE.TABLE_NAME1(....);
create table SCHEMA_NAME_VALUE.TABLE_NAME2(....);
create table SCHEMA_NAME_VALUE.TABLE_NAME3(....);
当使用 SQL*Plus 或 SQLcl 运行对象创建脚本时,请使用替换 (&
) 变量代替硬编码模式名称,并带有前导ACCEPT https://docs.oracle.com/cd/B10501_01/server.920/a90842/ch13.htm#1006991命令和尾随UNDEFINE https://docs.oracle.com/cd/B10501_01/server.920/a90842/ch13.htm#1014278命令。当变量没有尾随空格时,以句点 (.
).
ACCEPT SCHEMA_NAME_VALUE
create table &SCHEMA_NAME_VALUE..TABLE_NAME1(....);
create table &SCHEMA_NAME_VALUE..TABLE_NAME2(....);
create table &SCHEMA_NAME_VALUE..TABLE_NAME3(....);
UNDEFINE SCHEMA_NAME_VALUE
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)