注册
达梦create table as后缺少的对象
培训园地/ 文章详情 /

达梦create table as后缺少的对象

2023/04/06 1894 0 0

1.创建表

create table cismon.t1 (id number(38),
name varchar2(10) not null,
telephone number(11) constraint t1_unique unique,
identity_number number(18) primary key,
age number(3),
salary number(10),
tran_date date DEFAULT SYSDATE NOT NULL)
PARTITION BY RANGE(age)
(
PARTITION p1 VALUES LESS THAN (20),
PARTITION p2 VALUES LESS THAN (30),
PARTITION p3 VALUES LESS THAN (40),
PARTITION p4 VALUES EQU OR LESS THAN (MAXVALUE));

2.创建序列

CREATE SEQUENCE sequence_id MINVALUE 1 MAXVALUE 10000000 START WITH 1 INCREMENT BY 1 NOCYCLE NOCACHE;

3.插入数据

insert into cismon.t1 (id,name,telephone,identity_number,age,salary) values (sequence_id.NEXTVAL,'张三',11111111111,371502199910231111,20,2000);
insert into cismon.t1 (id,name,telephone,identity_number,age,salary) values (sequence_id.NEXTVAL,'李四',22222222222,371502199910232222,30,3000);
insert into cismon.t1 (id,name,telephone,identity_number,age,salary) values (sequence_id.NEXTVAL,'王五',33333333333,371502199910233333,40,4000);

commit;

4.创建视图

CREATE VIEW cismon.t1_view AS SELECT * FROM cismon.t1 WITH READ ONLY;

5.创建触发器

CREATE OR REPLACE TRIGGER cismon.t1_trigger
BEFORE insert
ON cismon.t1
BEGIN
PRINT '您正在对表t1进行插入操作';
END;

6.创建函数

create or replace function t1_function(salary number)
return number
is
sal_month number(9,2);
begin
select salary into sal_month from t1 where salary < 3000;
return sal_month;
end ;

7.创建存储过程

CREATE PROCEDURE t1_procedure (id number,name varchar2,telephone number,identity_number number,age number,salary number)
is
BEGIN
insert into cismon.t1 (id,name,telephone,identity_number,age,salary) values (id,name,telephone,identity_number,age,salary);
END;

8.创建同义词

CREATE SYNONYM cismon.t1_synonym FOR cismon.t1;

9.备份t1表

create table cismon.t1_bak as select * from cismon.t1;

10.模拟删除t1表

drop table t1;

11.通过t1_bak恢复

alter table t1_bak rename to t1;

12.确认t1表缺少对象

--非空约束消失
--注释消失
--索引,主键、唯一约束全部消失
--触发器消失
--分区消失

评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服