コマンドを使用せずにテーブルを記述しようとしていますが、クエリを置換変数DESCRIBE
と組み合わせたいです。次の表があるとします。
--DROP TABLE customers CASCADE CONSTRAINTS PURGE;
CREATE TABLE customers
( customer_id number(10) NOT NULL,
customer_name varchar2(50) NOT NULL,
city varchar2(50)
);
こことここの投稿に従って、置換変数を追加すると、次のようになります。
ACCEPT myv CHAR PROMPT 'Enter a table name: '
SELECT
column_name AS "Name",
nullable AS "Null?",
concat(concat(concat(data_type,'('),data_length),')') AS "Type"
FROM user_tab_columns
WHERE table_name = '&myv';
これにより、適切な列名を持つ空のテーブルが返されます。入力プロンプトでテーブル名を CUSTOMERS または customers として入力したかどうかは問題ではありません。ただし、次のdesc customers
結果が得られます。
Name Null Type
------------- -------- ------------
CUSTOMER_ID NOT NULL NUMBER(10)
CUSTOMER_NAME NOT NULL VARCHAR2(50)
CITY VARCHAR2(50)
ここで置換変数を機能させる方法はありますか? ありがとう。