6.表和数据的管理

2020-08-31  本文已影响0人  一浊酒

6.1 创建表

6.2 表删除

语法:DROP TABLE 表名

6.3 表的修改

6.4 数据的增删改

6.4.1    INSERT(增加)

标准写法:

INSERT INTO 表名[(列名 1,列名 2,...)]VALUES(值 1,值 2,...)

简单写法(不建议)

INSERT INTO 表名 VALUES(值 1,值 2,...)

注意:使用简单的写法必须按照表中的字段的顺序来插入值,而且如果有为空的字段使用 null

insert into person values(2,'李四',1,null,'北京育新');

6.4.2  UPDATE (修改)

全部修改:UPDATE 表名 SET 列名 1=值 1,列名 2=值 2,....

局部修改:UPDATE 表名 SET 列名 1=值 1,列名 2=值 2,....WHERE 修改条件;

全部更新

局部更新

6.4.3  DELETE (删除)

语法 : DELETE FROM 表名 WHERE 删除条件;

在删除语句中如果不指定删除条件的话就会删除所有的数据

因为 oracle 的事务对数据库的变更的处理,我们必须做提交事务才能让数据真正的插入到数

据库中,在同样在执行完数据库变更的操作后还可以把事务进行回滚,这样就不会插入到数据

库。如果事务提交后则不可以再回滚。

提交:commit

回滚:rollback

6.5 序列(主键自动增长)

在很多数据库中都存在一个自动增长的列,如果现在要想在 oracle 中完成自动增长的功能,则只能依靠序列完成,所有的自动增长操作,需要用户手工完成处理。

语法:CREATE SEQUENCE 序列名

[INCREMENT BY n]

[START WITH n]

[{MAXVALUE/ MINVALUE n|NOMAXVALUE}]

[{CYCLE|NOCYCLE}]

[{CACHE n|NOCACHE}];

范例:创建一个 seqpersonid的序列,验证自动增长的操作

CREATE SEQUENCE seqpersonid;

序列创建完成之后,所有的自动增长应该由用户自己处理,所以在序列中提供了以下的两种操作:

nextval :取得序列的下一个内容

currval :取得序列的当前内容

select seqpersonid.nextval from dual;

select seqpersonid.currval from dual;

在插入数据时需要自增的主键中可以这样使用

在实际项目中每一张表会配一个序列,但是表和序列是没有必然的联系的,一个序列被哪一张表使用都可以,但是我们一般都是一张表用一个序列。序列的管理一般使用工具来管理。

6.6 Scott 用户下的表结构

上一篇 下一篇

猜你喜欢

热点阅读