6.表和数据的管理
6.1 创建表
![](https://img.haomeiwen.com/i15011640/2bf9acc4d647e86b.png)
![](https://img.haomeiwen.com/i15011640/45eb9c65f9ba2ea8.png)
6.2 表删除
语法:DROP TABLE 表名
6.3 表的修改
![](https://img.haomeiwen.com/i15011640/59391ba5e9c2c379.png)
![](https://img.haomeiwen.com/i15011640/526e617ee87e8bfb.png)
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 修改条件;
全部更新
局部更新
![](https://img.haomeiwen.com/i15011640/fe6dea3767b1754f.png)
6.4.3 DELETE (删除)
![](https://img.haomeiwen.com/i15011640/9c3123decdbda019.png)
语法 : DELETE FROM 表名 WHERE 删除条件;
在删除语句中如果不指定删除条件的话就会删除所有的数据
因为 oracle 的事务对数据库的变更的处理,我们必须做提交事务才能让数据真正的插入到数
据库中,在同样在执行完数据库变更的操作后还可以把事务进行回滚,这样就不会插入到数据
库。如果事务提交后则不可以再回滚。
提交:commit
回滚:rollback
6.5 序列(主键自动增长)
![](https://img.haomeiwen.com/i15011640/805376dfc6025327.png)
语法: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;
在插入数据时需要自增的主键中可以这样使用
![](https://img.haomeiwen.com/i15011640/6d03044c5396c0cb.png)
6.6 Scott 用户下的表结构
![](https://img.haomeiwen.com/i15011640/fab83c167df26eb4.png)
![](https://img.haomeiwen.com/i15011640/c1198615e68983ee.png)
![](https://img.haomeiwen.com/i15011640/568c539f2bfc6722.png)
![](https://img.haomeiwen.com/i15011640/49fe6e50007d1d4e.png)
![](https://img.haomeiwen.com/i15011640/1bf859ac2bef0676.png)
![](https://img.haomeiwen.com/i15011640/c0082359abecca2b.png)