作为一合格的测试人员对数据库的单表查询、多表查询、分组查询、子查询等等这些基本查询方法还是要会的。不然到企业中,容易被一些人鄙视,或者说如果数据库学不好,表查不明白,那么对自己能力来说也是一种侮辱,因为你可以证明自己,你是可以的,尤其是你在面试的时候面对面试官的给你出的一道sql语句题目,你能马上用你的套路把这道题做出了,那么恭喜你过了第一个小关卡。ok,我们今天学习一下数据库中的第一个查询,也是最简单,容易入门的查看----表的一些操作。

我们在上一篇中创建了一个classinfo和studentinfo表,这两个表都是没有任何数据的。如下图所示:

我们在看看studentinfo表

select * from classinfo;   --用于查询班级表的sql

select * from studentinfo;   --用于查询学生表的sql

--向数据中插入数据 insert into用法

那么我们接下来往表中插入数据,插入数据的套路有两种比较常用的方法,我们先看第一种方法,请看 insert into关键字的正确使用姿势。我们先向classinfo表中插入如下数据:01,测试1班     02,测试2班   03,测试3班 , 04 测试4班(插入数据时,一定要注意插入数据的类型和约束,不要违背我们创建表时的约束,具体可以看我的上一篇介绍---oracle创建表操作) ,好继续看表演:

insert into classinfo(classid,classname) values(,'测试一班');
insert into classinfo(classid,classname) values(,'测试二班');
insert into classinfo(classid,classname) values(,'测试三班');
insert into classinfo(classid,classname) values(,'测试四班');
commit; --commit 是一次性提交到数据库保存,不commit就不会真正存储到数据库中。
--rollback 是回滚操作,代表的意思就是不commit就可以回滚到上一次操作

我们向classinfo表中插入了4条数据,看一下sql解析:

insert into ---插入表的sql关键字

classinfo ---插入数据的表的名字

classid ,classname ---表中的列名

values ---插入数据的 sql 关键字

我们看一下插入后的结果,插入运行完成后,需要select * from classinfo这个表来看一下,有没有成功。如下图:

很完美,插入完成了,插入成功以后,如果我们向提交到数据库中,需要commit一下,不然只是临时创建成功,没有真正保存到数据库中。然后我们继续往studentinfo表中插入一些数据,看表演:

insert into studentinfo
(studentid,
studentname,
studentsex,
studentage,
studenttel,
studentaddress,
classid)
values (, '张山', '男', , '', '北京',);

我们看一下插入后的结果:

OK,我们在看第二种插入方式,第二种的方式比第一种更加的方便,如果明确要往表中插入数据,可以省掉values前面的列名。我们来看一下插入的sql语句:

insert into studentinfo values(2,'李四','男',18,'','南昌',2);
insert into studentinfo values(3,'王五','男','','','深圳',3);
insert into studentinfo values(4,'丽丽','女','','','新疆',4);

查看一下插入后的结果。是不是很完美呢?那classinfo表,我就不给大家演示了,一样的套路。

2.修改表中的数据 update  set用法

--修改某列数据

我们现在呢,有需求了,比如我要修改studeninfo表中的数据呢?那么我们细化一下需求,比如修改某几行?修改某几列数据或者清空数据呢?

--修改张山的性别为女
update studentinfo set studentsex='女' where studentid=1;
select * from studentinfo;

查询结果:

--修改某几列数据

update studentinfo set studentname='李五',studentsex='女',studentage=15 where studentid=2;
commit;
select * from studentinfo;

查询结果:

--清空某几个数据 比如张山的sex 

update studentinfo set studenttel=null where studentid=1;
commit;
select * from studentinfo;

查看结果:

--将所有数据中的age设置为女

update studentinfo set studentsex='女';
commit;

查看结果:

update studentsex后面不接条件,默认修改所有数据。

同样的,我们可以对表中的数据进行相加、相乘

--对表中的数据进行想加运算

--将张山的年龄增加10岁
update studentinfo set studentage=studentage+10 where studentid=1;
commit;

查看结果:

--对表中的数据进行相乘运算

--将王五的年龄乘3岁
update studentinfo set studentage=studentage*3 where studentid=3;
commit;
select * from studentinfo;

查看结果:

--删除表中的数据

--删除表中的数据  关键字 delete from 表名 where 筛选条件
--删除张山的数据
delete from studentinfo where studentid=1;
commit;

查看结果:

--删除李五和王五的信息
delete from studentinfo where studentid=2 or studentid=3;
commit; --我们使用的是or链接2个条件,使用and是不符合条件的,因为or是或的关系。

查看结果:

删除后只剩下丽丽的数据在这里,那如果我们想要把所有的数据都删除呢?换句话说就是把表删除了。看表演姿势:

--删除studentinfo表 即删除整个表中所有的数据
drop table studentinfo;

删除后,在查询studentinfo表,提示该表不存在。

OK,到此关于数据库中的插入/修改/删除等等基本操作就给大家分享完了。下一篇我们介绍单表查询。

知识点总结:

--插入数据 insert into     表名(列名) values(插入的数据)
--修改数据 update         表名 set   where (筛选条件)
--删除数据 delete from 表名 where(筛选条件)
--删除表   drop table     表名 
 

oracle数据库之数据插入、修改和删除的更多相关文章

  1. Oracle数据库用户数据完整备份与恢复

    使用PLSQL-Developer工具可以快速便捷地完成Oracle数据库用户.表的备份恢复. Oracle数据库用户数据完整备份与恢复 1. 备份 1.1   PL/SQL->工具->导 ...

  2. mysql基础篇 - 数据库及表的修改和删除

    基础篇 - 数据库及表的修改和删除         修改和删除 一.实验简介 本节实验中,我们将学习并实践如何对数据库的内容做修改,删除,重命名等操作. 二.实验准备 在正式开始本实验内容之前,需要先 ...

  3. Delphi - cxGrid连接Oracle数据库 实现数据的增删改查

    cxGrid连接Oracle数据库 实现数据的增删改查 cxGrid连接Oracle数据库 1:通过OraSession连接数据库.OraDataSet实现OraSession和OraDataSour ...

  4. oracle 数据库 NLS_CHARACTERSET 字符集的修改

    修改Oracle 数据库字符集总结:修改方式大约有3种:方法一: (最安全的方法)数据库创建以后,如果需要修改字符集,通常需要重建数据库,通过导入导出的方式来转换.方法二: (最常用的方法)通过 &q ...

  5. spring BasicDataSource 数据源配置 sqlserver数据库 oracle数据库 mysql数据jdbc配置

    spring BasicDataSource 数据源配置 sqlserver数据库 oracle数据库 mysql数据jdbc配置 jdbc.properties 文件信息如下: ---------- ...

  6. C#连接Oracle数据库查询数据

    C#连接Oracle数据库可以实现许多我们需要的功能,下面介绍的是C#连接Oracle数据库查询数据的方法,如果您对C#连接Oracle数据库方面感兴趣的话,不妨一看. using System; u ...

  7. Oracle数据库教程-数据定义语言(表操作)

    创建表 建表语法: CREATE TABLE 表名 ( 列1 数据类型 [primary key], 列2 数据类型 default 默认值 [not null], …, constraint 约束名 ...

  8. Oracle数据库,数据的增、删、改、查

    oracle数据库中,数据的增.删.改.查,通过SQL语句实现 SQL:结构化查询语言: 特点:不区分大小写:字符串用单引号引起来:语句结束用分号表示结束: 行注释,在语句的最前面加"--& ...

  9. Oracle 分区表的新增、修改、删除、合并。普通表转分区表方法

    一. 分区表理论知识 Oracle提供了分区技术以支持VLDB(Very Large DataBase).分区表通过对分区列的判断,把分区列不同的记录,放到不同的分区中.分区完全对应用透明. Orac ...

随机推荐

  1. Flyway客户端使用

    一.flyway介绍 Flyway是一款开源的数据库版本管理工具,它更倾向于规约优于配置的方式.Flyway可以独立于应用实现管理并跟踪数据库变更,支持数据库版本自动升级,并且有一套默认的规约,不需要 ...

  2. 关于 webpack-dev-server 热更新出现重复的问题

    关于 webpack-dev-server 热更新出现重复的问题 webpack-dev-server 在前端开发时很方便,可以热更新,只需要配置 webpack.config.js 即可. 但是昨天 ...

  3. bzoj 4671 异或图——容斥+斯特林反演+线性基

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=4671 考虑计算不是连通图的方案,乘上容斥系数来进行容斥. 可以枚举子集划分(复杂度是O(Be ...

  4. css3中做3D导航栏

    看别人做的一个3D导航栏,觉得很厉害,这里先保存下来,后面有时间好好分析一下: <!doctype html> <html lang="en"> <h ...

  5. FIREDAC的心得

    FIREDAC与UNIDAC有些不同 但大体上是相同的 以下是一些随手笔记: FieldCount是当前FDQuery2所在行里面有多少列 一般用FieldList[X]来代表第几列 str:=FDQ ...

  6. nginx.conf自己整理的中文解读

    自己收集了网上有关conf文件的中文详解,这样以后就不怕看不懂nginx的配置文件啦! #定义Nginx运行的用户和用户组user www www; #nginx进程数,建议设置为等于CPU总核心数. ...

  7. FTP for win7

    In Windows 7, you can share files on home network easily using Home Group but creating an FTP server ...

  8. python's thirteenth day for me 迭代器 生成器

    迭代器: for 循环可以循环的就是可迭代对象. 可迭代对象:str, list, tuple, dict, set, range. 迭代器:f1文件句柄. 可迭代协议: 可以被迭代要满足的要求就叫做 ...

  9. java成神之——HttpURLConnection访问api

    HttpURLConnection 访问get资源 访问post资源 访问Delete资源 获取状态码 结语 HttpURLConnection 访问get资源 HttpURLConnection c ...

  10. select 设置发送超时发送注意事项

    //设置发送超时你只发送, 并发送足够多的数据以填满发送缓冲区, 接收端一直不接收.发送端一量满发送缓冲区就会阻塞, 如果你设置了发送超时, 超时到了它就会返回发送超时了. 在send(),recv( ...