码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Oracle-数据的基本操作


    工欲善其事必先利其器
    文章持续更新,可以微信搜索【小奇JAVA面试】第一时间阅读,回复【资料】获取福利,回复【项目】获取项目源码,回复【简历模板】获取简历模板,回复【学习路线图】获取学习路线图。

    在这里插入图片描述

    文章目录

    • 一、备份数据库表
      • 1、备份学生表并命名为student_bak
    • 二、数据增加
      • 1、向学生表中插入“张三”学生的数据
    • 三、数据修改
      • 1、将学生名称为“张三”的学生的年龄修改为20
    • 四、数据删除
      • 1、将学生名称为“张三”的学生信息删除
    • 五、事务处理
      • 1、将学生名称为“张三”的学生信息删除
    • 六、数据伪列
      • 1、查询所有的学生姓名和行号
      • 2、查询所有的学生姓名和行号并取出第一行
      • 3、查询所有的学生姓名和行号并取出前五行
      • 4、删除学生表中学生姓名为“张三”的重复数据
    • 七、总结


    一、备份数据库表

    create table 备份后的表名称 as (要备份的数据)

    1、备份学生表并命名为student_bak

    create table student_bak as select * from student;
    
    • 1

    二、数据增加

    1、向学生表中插入“张三”学生的数据

    insert into student (id,name,age,sex,class) values (10,'张三',20,'男','五班');
    
    • 1

    三、数据修改

    1、将学生名称为“张三”的学生的年龄修改为20

    update student set age = 20 where name = '张三';
    
    • 1

    四、数据删除

    1、将学生名称为“张三”的学生信息删除

    delete from student where name = '张三';
    
    • 1

    五、事务处理

    oracle在执行增删改操作的时候都需要进行提交事务的,增删改操作是先将数据放入缓存区,执行commit命令后才能真正的修改数据,在缓存区的时候可以使用rollback命令进行回滚操作

    1、将学生名称为“张三”的学生信息删除

    delete from student where name = '张三';
    
    • 1

    此时并没有真正的删除学生的数据,需要commit提交后才能修改数据,所以可以将上面的语句和commit语句写成一个语句,为了简便我之前的操作都没有加commit命令。

    delete from student where name = '张三';
    commit;
    
    • 1
    • 2

    六、数据伪列

    数据伪列是oracle数据库默认的一些列,如果不主动操作是没有什么影响,如果要使用这些伪列可以显示的操作,例如之前的sysdate系统日期,现在来讲一下rownum(行号)、rowid(不重复的行号)

    1、查询所有的学生姓名和行号

    select rownum,name from student;
    
    • 1

    2、查询所有的学生姓名和行号并取出第一行

    select rownum,name from student where rownum = 1;
    
    • 1

    3、查询所有的学生姓名和行号并取出前五行

    select rownum,name from student where rownum <= 1;
    
    • 1

    使用rownum是行号,可以被修改,这样的话就有可能重复,所以我们一般删除的时候可以根据rowid来进行删除操作。假设我们数据库中有两个姓名为“张三”的数据,我们想删除其中一条应该怎么删除呢,如果用where name=‘张三’,这样的话肯定两条都删除了,那我们应该使用rowid来操作

    4、删除学生表中学生姓名为“张三”的重复数据

    delete from student where rowid  not in (select min((rowid)from student where name = '张三')
    
    • 1

    七、总结

    这里的相关内容还没有整理完毕,文章后面持续更新,建议收藏。

    文章中涉及到的命令大家一定要像我一样每个都敲几遍,只有在敲的过程中才能发现自己对命令是否真正的掌握了。

    可以微信搜索【小奇JAVA面试】第一时间阅读,回复【资料】获取福利,回复【项目】获取项目源码,回复【简历模板】获取简历模板,回复【学习路线图】获取学习路线图。

  • 相关阅读:
    ZooKeeper下载、安装、配置和使用
    网络上怎么赚点零花钱
    ASP.NET基于WEB的选课系统
    FPGA面试题(7)
    LeetCode 87 双周赛
    重庆人文科技学院建立“软件安全产学研基地”,推动西南地区软件安全发展
    Net跨平台UI框架Avalonia入门-安装和使用(v11版本)
    C. Boboniu and Bit Operations(暴力+枚举)
    数据中心为什么需要一套基础设施可视化管理系统
    Centos7 安装Seata1.5.1
  • 原文地址:https://blog.csdn.net/weixin_44096133/article/details/125510062
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号