oracle基础:插入
来源:互联网 发布:季后赛马刺vs雷霆数据 编辑:程序博客网 时间:2024/06/03 21:14
--插入新的记录
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;
--三、删除表中重复记录是难点!待续
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;
--三、删除表中重复记录是难点!待续
0 0
- oracle基础:插入
- 初学oracle 单表 插入 删除 修改(基础)
- Oracle 基础(3)——插入数据
- oracle插入
- oracle基础(表的创建,插入,修改,增加,列的问题)
- Oracle PL/SQL开发基础(第十二弹:插入、更新和删除)
- 【基础中心】笔记四--Oracle序列获得和插入数据库的值不同
- 基础算法-插入排序
- 基础篇--插入排序
- 基础算法-插入排序
- 【基础算法】插入排序
- 【算法基础】插入排序
- 【基础算法】-- 插入排序
- 基础排序:插入排序
- oracle插入&特殊符号
- 插入新数据oracle
- Oracle循环插入测试数据
- oracle数据表插入时间
- u-boot中链接地址和加载地址的相关知识
- 修改openwrt(通过stty)
- Java基础加强
- iOS 获取手机的型号,系统版本,软件名称,软件版本
- GObject对象系统
- oracle基础:插入
- 构造顺序表--合并两个按元素从小到大排列的顺序表
- 高质量C/C++编程指南(七)
- android Vibrator 振动开发
- Number of 1 Bits
- JavaWeb之Request && Response篇
- 深圳互联网为何能快速崛起?
- oracle基础:使用字符串
- Day One,配置ssh免密码登陆