操作表中的数据
- 添加数据
- 修改数据
- 删除数据
1.添加数据
INSERT语句
INSERT INTO table_name
(column1, column2, ...) --字段名
VALUES(value1, value2, ...); --数据类型要和字段一一对应,值和字段的数量要相同
若向所有字段添加值,则字段名可以省略,但数值要和表中的顺序一一对应。
例如,现有一张表userinfo,有四个字段,分别为ID、USERNAME、USERPWD、REGDATE,数据类型对应为NUMBER、VARCHAR2(20)、VARCHAR2(20)、DATE,可以用如下语句进程插入数据:
- 向表中所有字段添加值
insert into userinfo
values(1, 'Tom', '123456', sysdate);
(sysdate为获取系统当前时间的函数)
- 向表中指定字段添加值(需要注意约束)
insert into userinfo(id, username, userpwd)
values(2, 'Kim', '123456');
- 向表中添加默认值
创建表时设置默认值:
create table userinfo
(id munber(7,0),
regdate date default sysdate);
设置默认值之后,若在插入时只设定其中一个字段,则需要制定,如:
insert into userinfo(id)
values(1);
修改表时设置默认值:
alter table userinfo
modify userpwd default '111111';
复制表中的数据
- 在建表时复制
CREATE TABLE table_name
AS
SELECT column1,... | * FROM table_old;
- 在添加时复制
INSERT INTO table_new --向已近存在的表添加
[(column1,...)] --向哪些字段添加值
SELECT column1,... | * FROM table_old;
注意:两张表对应位置字段的数据类型要匹配。
2.修改数据
UPDATE语句
UPDATE table_name
SET column1=value1, ...
[WHERE conditions]; --修改条件
- 无条件更新
update userinfo
set userpwd='111111', username='Lily';
- 有条件更新
update userinfo
set userpwd='111111'
where username='Tom';
3.删除数据
在Oracle中以行为单位删除数据,不能删除某一列的数据。
DELETE语句
DELETE FROM table_name;
删除表中所有数据
按条件删除:
DELETE FROM table_name
[WHERE conditions];