oracle基礎 插入

2021-07-01 23:19:03 字數 1895 閱讀 7634

--插入新的記錄

create table testtable(

c1 varchar2(10) default '預設值1',

c2 varchar2(10) default '預設值2',

c3 varchar2(10) default '預設值3',

c4 date default sysdate

);insert into testtable(c1,c2,c3) values(default,null,'測試值1');

select * from testtable;

/*1.insert沒有包含的列,則會自動新增預設值

2.如果包含預設值的列呀顯示預設值,用default關鍵字

3.如果已經設定了null或者其他值,將不會在生成預設值

*/--複製表和資料

create table testtable2 as  select* from testtable ;--複製表和資料

create table testtable2 as  select* from testtable where 1=2;--複製表的定義,不複製資料

insert into testtable2 select * from testtable;--複製資料

--限制輸入錄入

alter table emp add constraints ch_sal check(sal>0);--一般情況下,新增約束即可

insert into (select empno,ename,hiredate from emp where hiredate<= sysdate with check option) values(9999,'test',sysdate+1);

/*複雜的,僱傭日期必須小於等於當期系統時間。上面查詢語句將將被為檢視,條關鍵字 with check option 使得插入操作在條件不滿足的情況下,無法插入,從而實現約束*/

--二、多表插入

/*1.無條件插入 insert

2.有條件  insert all

3.有條件  insert first

*/--建立兩個案例用表

create table emp1 as select empno,ename,job from emp where 1=2;

create table emp2 as select empno,ename,deptno from emp where 1=2;

--無條件向這倆個案例用表插入資料

insert all

into emp1(empno,ename,job) values(empno,ename,job)

into emp2(empno,ename,deptno) values(empno,ename,deptno)

select empno,ename,job,deptno from emp ;

select *from  emp1;

select *from  emp2;

--有條件向這倆個案例用表插入資料

delete emp1;

delete emp2;

insert all

when job in ('salesman','manager') then

into emp1(empno,ename,job) values(empno,ename,job)

when deptno in ('20','30') then

into emp2(empno,ename,deptno) values(empno,ename,deptno)

select empno,ename,job,deptno from emp ;

select *from  emp1;

select *from  emp2;

--三、刪除表中重覆記錄是難點!待續

oracle多表插入

發表 csdn 日期 20090828 在oracle中關於多表插入的有四種分別是 1.無條件的多表insert all 2.帶條件的多表insert all 3.帶條件的多表insert first 4 pivoting insert 語法 insert all first when condit...

oracle 多表插入

建立表 create table tb user id integer primary key,user name varchar2 20 not null,user age integer not null create sequence seq user increment by 1 start...

oracle插入資料

插入資料的方法有多種,這裡簡單介紹三種 1.常規插入資料 select from emp 已scott.emp表為例 按照values插入資料 insert into emp empno,ename job,mgr,hiredate sal comm,deptno values 1122,steve...