Oracle数据库学习笔记:插入、更新、事务与函数

版权申诉
0 下载量 72 浏览量 更新于2024-09-07 收藏 16KB DOCX 举报
"这是一份Oracle数据库的学习笔记,主要涵盖了数据插入、批量数据操作、更新数据、事务管理和常用函数的使用。" 在Oracle数据库管理中,掌握基础的SQL语句和操作是至关重要的。这份笔记首先介绍了如何插入时间数据,通过`to_date`函数将字符串格式的时间转换为日期类型,例如`to_date('2021-1-02', 'yyyy-mm-dd')`。这种方式可以确保数据以正确的日期格式存储。 批量插入数据是提高效率的有效手段,笔记中给出了一个例子,展示了如何将表b的所有数据插入到表a中,只需要使用`insert into a (列出全部列名) select 列出全部列名 from b`的语句。这适用于两表结构相同的情况。 更新数据时,笔记提到了使用子查询,例如更新员工Scott的岗位、工资和补助至与Smith相同的值。对应的SQL语句是`update emp set (job, sal, comm) = (select job, sal, comm from emp where ename='smith') where ename='Scott'`。这样的操作可以方便地根据特定条件进行数据同步。 事务管理在数据库操作中起到关键作用。笔记列举了如何设置存储点(`savepoint a`),以及两种回滚事务的方式:一是`rollback to a`回滚到指定的存储点,二是`rollback`取消所有事务。此外,还提到了只读事务,通过`set transaction readonly`命令,可以确保用户只能获取某个时间点的数据,但不能进行修改。 在函数部分,笔记讲解了几种常用的字符串处理函数。`lower(char)`用于将字符串转为小写,如`select lower(ename) from emp`;`upper(char)`则将字符串转为大写,如`select upper(ename) from emp`;`length(char)`返回字符串的长度,例如`select * from emp where length(ename) = 5`;而`substr(char, m, n)`用于提取子串,其中m表示起始位置,n表示提取的字符数,例如`select substr(ename, 1, 3) from emp`。 学习笔记中的练习题要求以首字母大写的方式显示所有员工的姓名,可以通过组合使用`upper`、`substr`和`lower`函数来实现,具体SQL语句为`select upper(substr(ename,1,1)) || lower(substr(ename,2,length(ename)-1)) from emp`。这个命令首先取每个员工姓名的第一个字符并转为大写,然后取剩余字符并转为小写,最后合并两个结果。 这份Oracle学习笔记涵盖了数据库操作的基础知识,对于初学者或需要复习的数据库管理员来说是一份宝贵的资料。通过深入理解和实践这些知识点,可以更好地管理和维护Oracle数据库系统。