[英]Script create table on UNIX and sqldeveloper are different
如果在sqldeveloper命令中,ddifference是什么
從雙中選擇dbms_metadata.get_ddl('TABLE','table_name','owner');
給我結果
CREATE TABLE "OWNER"."TABLE_NAME"
("HENCD" VARCHAR2(4),
"HCACT" VARCHAR2(12),
"HETID" VARCHAR2(30),
"HERID" VARCHAR2(20),
"HFNCD" VARCHAR2(1),
"HPSIN" VARCHAR2(2)
CONSTRAINT "PK_TRANQ_BPSBATCH" PRIMARY KEY ("HETID", "HFNCD", "FIRM_CUST_IND")
USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS
STORAGE(INITIAL 1048576 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
TABLESPACE "DAT01" ENABLE
) SEGMENT CREATION IMMEDIATE
PCTFREE 20 PCTUSED 80 INITRANS 1 MAXTRANS 255
NOCOMPRESS LOGGING
STORAGE(INITIAL 302858240 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
TABLESPACE "DAT01" "
但是在實際腳本中,我看到了:
DROP TABLE table_name
/
CREATE TABLEtable_name(
hencd VARCHAR2(4),
hcact VARCHAR2(12),
hetid VARCHAR2(20),
herid VARCHAR2(20),
hfncd VARCHAR2(1),
hpsin VARCHAR2(1), )
GRANT SELECT ON tran_queue_bps_batch TO public
/
GRANT ALL ON tran_queue_bps_batch TO dtebatch
/
-- Indexes for TRAN_QUEUE_BPS_BATCH
CREATE INDEX indname1 ON table_name (intact_tag, hasdt)
TABLESPACE idx01
/
我必須使用哪一個來刪除並重新創建帶有其他列的表?
“我必須使用哪一個來刪除並重新創建帶有附加列的表?”
如果您想要做的是添加一列,那么您應該編寫一個腳本來執行
alter table table_name add new_column number --- or whatever.
如果不需要,刪除並重新創建表沒有任何意義。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.