如何在运行时更改表名

时间:2012-03-02 06:04:44

标签: oracle10g

我有以下内容,

 create table ssrr_emp(
                        Emp_name varchar2(25),
                        Emp_city varchar2(10),
                        Emp_id number(2)
                        );
/


create table ssrr_empsal(
                        sal_grade char(1),
                        salary  number(7,2),
                        Commission number(5)
                        );
/

在上面的代码中,表名以ssrr为前缀,即ssrr_emp和ssrr_empsal,

这里我的问题是我执行上面的代码

我需要在表名前加上er,即er_emp和er_empsal。

我的意思是在运行时它应该要求名称只输入ssrr, 和 如果我输入er,则表格应该以名称er_emp和er_empsal创建。

1 个答案:

答案 0 :(得分:1)

如果您使用的是SQL * Plus,则可以使用&替换变量,例如:

create table &&PREFIX._emp(
                    Emp_name varchar2(25),
                    Emp_city varchar2(10),
                    Emp_id number(2)
                    );
/

create table &&PREFIX._empsal(
                    sal_grade char(1),
                    salary  number(7,2),
                    Commission number(5)
                    );
/

运行脚本时,它会提示您输入值:

Enter value for prefix: