您的位置:首页 > 其它

insert 插入数据

2015-12-06 19:57 309 查看
语法格式:

insert into 表名称[(字段名称1,字段名称2……)]values[(值1,值2,……)]

创建备份表myemp 

create table myemp as select * from emp;


标准语法:对于没有数据的列就不写进字段列表

insert into myemp(empno,ename,job,mgr,hiredate,sal,comm,deptno) values(7899,'张三丰','清洁工',7369,to_date('2005-02-20', 'yyyy-mm-dd'),1200,300,40);


select * from myemp;



简略语法:如果插入时没有明确的写出字段,则没有值得字段用null来代替

insert into myemp values(9991, '陈寅恪', '教师', null, to_date('1902-01-03', 'yyyy-mm-dd'), 1200, null, 30);

select * from myemp;



两种写法比较:

       推荐使用标准写法,不推荐使用简略写法。

        简略写法再添加表字段的时候容易出问题。

给myemp 表添加字段住址字段 address 

alter table myemp add address varchar2(100);
 

此时再执行上面的两条insert 语句

insert into myemp(empno,ename,job,mgr,hiredate,sal,comm,deptno) values(7899,'张三丰','清洁工',7369,to_date('2005-02-20', 'yyyy-mm-dd'),1200,300,40);
可以顺利插入表中



insert into myemp values(9991, '陈寅恪', '教师', null, to_date('1902-01-03', 'yyyy-mm-dd'), 1200, null, 30);


   没有足够的值

检查下就可以发现,添加表字段后,myemp增加了字段address,而简略写法中,没有预留该字段值,故出错。

所以,推荐标准写法,按照列插入数据。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  insert