DML的原理:一篇文章让你豁然开朗

推荐阅读

给软件行业带来了春天——揭秘Spring究竟是何方神圣(一)
给软件行业带来了春天——揭秘Spring究竟是何方神圣(二)


文章目录

  • 推荐阅读
      • DML 数据操纵语言
          • INSERT语句
          • UPDATE语句
          • DELETE语句
          • SELECT语句


DML 数据操纵语言

DML是对表中数据进行的操作。
DML伴随事务控制(TCL)
也包含操作,增删改等基本操作。

INSERT语句

INSERT 语句向表中插入数据。

INSERT INTO K(id,name) VALUES(1,'bob')

image.png

在执行时,发现没有权限。
那么可以登录管理员账户执行一下语句。需要什么权限,执行相应的语句即可。

test只是测试名,添加你自己的用户名即可

grant connect, resource to test;
grant create any sequence to test;
grant delete any table to test;
grant create any table to test;
grant delete any table to test;
grant insert any table to test;
grant select any table to test;
grant unlimited tablespace to test;
grant execute any procedure to test;
grant update any table to test;
grant create any view to test;

执行后即可。
简单查看插入数据。SELECT*FROM K。
image.png

查看资料,这次添加数据只是添加到缓存中了,自己选择查看有点类似于预览的意思。如果需要别人也查看自己添加的数据,需要点击提交,或者commit一下,这样同伴连上数据库中也可看到自己添加的数据了。

插入日期时,需要考虑一下日期格式。

INSERT INTO K(id,name,birth)
VALUES(10,'Alice','03-Apr-22')
地区之间存在差异,容易报错。INSERT INTO K (id,name,birth)
VALUES(3,'VC',TO_DATE('2022-12-31'),'YYYY-MM-DD')

image.png

UPDATE语句

update语句修改表中数据。
uodate语句修改时最好使用where添加过滤条件,只有满足条件的记录才会进行修改,否则全表所有数据都修改。

UPDATE K set uname='dd' WHERE name='bob'修改多个字段
UPDATE K SET uname='mm',id=2 WHERE name='c'

image.png

DELETE语句

删除表中数据,删除数据通常也要添加where语句来限定要删除数据的条件,否则就是清空表操作。
添加限定条件后,将会删除符合该条件的所有行。

DELETE FROM K
WHERE name='c'

image.png

SELECT语句

select语句,用于查询表中数据。
SELECT 子句后面跟的是要查询的字段,可以包括表中的而具体字段,函数或者表达式。
FROM子句用来指定数据来源的表
WHERE子句用来添加过滤条件,这样做的结果是只将满足条件的记录查询出来。

SELECT name FROM K
SELECT name,id FROM K
SELECT name,id*3 FROM K

字符串函数
CONCAT()函数,用来连接字符串。一次性只能连接一个。

SELECT CONCAT(name,id)FROM K拼接多个字符串SELECT CONCAT(CONCAT(name,','),id) FROM K另一种连接字符串的方式。SELECT name||','||id

image.pngimage.png

LENGTH函数,查看字符串长度

SELECT name,LENGTH(name)FROM K

UPPER,LOWER,INITCAP
将字符串转换成全大写,全小写,以及首字母大写,
对于INITCAP而言,可以使用空格,隔开多个单词,那每个单词首字母都会大写。

伪表 :dual
当查询的内容不和任何表中数据有关系时,可以使用伪表,伪表只会查询一条记录。

SELECT UPPER('hello'),
LOWER('Helloword'),
INITCAP('HEELO'),
INITCAP('HELLO WORD')
FROM dual

image.png

TRIM,LTRIM,RTRIM
去除当前字符串中的两边的指定重复字符,LTRIM仅去除左侧的,RTRIM仅去除右侧的。

SELECT TRIM('e' FROM 'ebabecce')FROM dual

image.png

SELECT LTRIM('ebebecce','eb')FROM dual

image.png

LPAD ,RPAD补位函数
LPAD,左补位函数
RPAD,右补位函数

SELECT LPAD(id,4,'*')FROM K
SELECT RPAD(id,4,'$')FROM K

image.png

SUBSTR截取字符串
第三个参数不指定,则从指定字符截取到末尾.
指定长度如果超过实际可以截取的内容也是截取到末尾。
第二个参数时,如果截取的位置为负数,则表示从倒数第几个字符开始截取。

数据库中的下标都是从1开始。

SELECT SUBSTR('thinking in java',13,4)FROM dualSELECT SUBSTR('thinking in java',-4,4)FROM dual

image.pngimage.png

INSTR(char1,cahr2,n,m)函数
查找char2在char1中的位置,n为从第几个字符开始检索,m为第几次出现,不写都默认为1.

SELECT INSTR('thinking in java','in')FROM dual//3SELECT INSTR('thinking','in',4,1)FROM dual//6

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/441114.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网络协议与攻击模拟_11DHCP欺骗防护

开启DHCP 监听 ip dhcp snooping 指定监听vlan ip dhcp snooping vlan 1 由于开启监听后,交换机上的接口就全部变成非信任端口, 非信任端口会拒绝DHCP报文,会造成正常的DHCP请求和响应都无法完成。 现在是请求不到IP地址的,…

C语言——文件操作(看这一篇就够了)

1、为什么使用文件? 我们前面学习结构体,在写通讯录的时候会发现一个问题,我们向通讯录里面录入数据,当程序退出的时候,记录的数据也随之没有了,等下次我们在再调用通讯录时,又得重新录入数据&…

安徽省考报名流程及注意事项,看完就稳了!

2024安徽省考报名入口已开通, 报名易出错的问题图解√ 省考报名时间:1月29日9:00至2月4日20:00 选调生报名时间:1月29日9:00至2月4日17:30 省考资格初审时间:2月6日16:00前 选调生资格初审时间:2月6日12:00前 省考缴费时间:2月8日20:00前 选调生缴费时间:2月8日17:0…

vit细粒度图像分类(六)TransFC学习笔记

1.摘要 从判别局部区域学习特征表示在细粒度视觉分类中起着关键作用。利用注意机制提取零件特征已成为一种趋势。然而,这些方法有两个主要的局限性:第一,它们往往只关注最突出的部分,而忽略了其他不明显但可区分的部分。其次,他们…

矩阵键盘的使用

在定义局部变量时,一定要给该变量赋初值。在这个程序中,给按键按下的返回值变量 KeyNum 赋值为 20 。 矩阵键盘线行扫描法的学习链接:https://www.bilibili.com/video/BV1dv411z7Gd/?spm_id_from333.999.0.0&vd_sourceb91967c499b23106…

使用Docker安装Jenkins,并能够在该Jenkins中使用Docker

1. 构建Dockerfile 试错1 参考https://medium.com/manav503/how-to-build-docker-images-inside-a-jenkins-container-d59944102f30 按照文章里所介绍的,实现在Jenkins容器环境中依然能够调用Docker,需要做到以下几步 下载Jenkins镜像将环境中的docke…

架构整洁之道-价值维度与编程范式

1 设计与架构究竟是什么 结论:二者没有任何区别,一丁点区别都没有。 架构图里实际上包含了所有底层设计细节,这些细节信息共同支撑了顶层的架构设计,底层设计信息和顶层架构设计共同组成了整个架构文档。底层设计细节和高层架构信…

JRT人大金仓测试

之前基于IRIS导出的Sql脚本用JRT的导表脚本执行Sql语句在PostGreSql数据库把IRIS导出的库还原。并且试了模板设计器的打开和保存及打印功能。本次测试IRIS导出的Sql在人大金仓上还原数据库,并且测试模板设计器功能和打印。 首先碰到的一个坑是人大金仓把空串存成NU…

Win10 双网卡实现同时上内外网

因为需要同时上内网和外网,但公司做了网络隔离,不能同时上内外网,所以多加了块无线网卡,配置双网关实现同时上内外网,互不影响 打开 Windows PowerShell(管理员),输入:ro…

python爬虫爬取网站

流程: 1.指定url(获取网页的内容) 爬虫会向指定的URL发送HTTP请求,获取网页的HTML代码,然后解析HTML代码,提取出需要的信息,如文本、图片、链接等。爬虫请求URL的过程中,还可以设置请求头、请求参数、请求…

现代C++之万能引用、完美转发、引用折叠FrancisFrancis

转载:现代C之万能引用、完美转发、引用折叠 - 知乎 (zhihu.com)https://zhuanlan.zhihu.com/p/99524127 后期参考(还未整合):C 完美转发深度解析:从入门到精通_c完美转发-CSDN博客https://blog.csdn.net/qq_21438461/article/details/129938466 0.导语 …

产品经理的发展方向是什么?市场需求现状如何?未来有哪些趋势?作为产品经理应该如何准备?

目录 了解产品经理的发展方向 市场需求现状 未来有那些趋势? 作为产品经理应该作何准备? 了解产品经理的发展方向 市场需求现状 未来有那些趋势? 个人软件 :智能终端,轻量化应用,虚拟社交等企业软件&#xff1a…