
数据库知识
为了暑假实习,复习数据库的知识
以码平川
这个作者很懒,什么都没留下…
展开
-
MySQL中,21个写SQL的好习惯(修正版)
MySQL中,21个写SQL的好习惯(修正版)参考与感谢[delete后加 limit是个好习惯么] (https://blog.youkuaiyun.com/qq_39390545/article/details/107519747)《阿里开发手册》来源:捡田螺的小男孩作者:捡田螺的小男孩原文:MySQL中,21个写SQL的好习惯(修正版)每一个好习惯都是一笔财富,本文分SQL后悔药, SQL性能优化,SQL规范优雅三个方向,分享写SQL的21个好习惯,谢谢阅读,加油哈~公众号:「捡田螺的小男原创 2020-11-09 16:39:13 · 887 阅读 · 0 评论 -
Oracle开发实战学习
Oracle开发实战学习中间件:将具体业务和底层逻辑解耦的组件。第1章 Oracle关系数据库作业:(1)什么是关系模型与关系数据库。关系数据库:关系数据库系统是目前应用最为广泛的数据库系统,它采用关系数据模型作为数据的组织方式。关系模型:自我理解: 关系数据库模型是在层次结构的约束方面进行了改进,没有完全放弃层次关系结构,我们可以直接访问任何表.而不需要访问所有的父对象,任何表都可以连接起来,(什么是层次结构数据库模型?层次数据库模型是倒置的树状态结构,这个模型的表具有子-父关系,每个子表原创 2020-09-22 15:28:59 · 1642 阅读 · 1 评论 -
Oracle11g 的安装与卸载
Oracle11g 的安装与卸载文章目录Oracle11g 的安装与卸载第一章 安装步骤第二章 安装之后的配置问题第三章 完全卸载Oracle数据库3.1关闭oracle所有的服务。3.2打开注册表:regedit3.3找到路径:3.4删除注册的oracle事件日志,打开注册表3.5删除环境变量path中关于oracle的内容。(这一步好像不做也可以。)3.6重新启动操作系统。3.7重启操作系统后各种Oracle相关的进程都不会加载了。3.8删除开始菜单中的oracle项。Oracle数据库如果想要安原创 2020-09-22 15:18:43 · 645 阅读 · 0 评论 -
对比JPA 和Hibernate 和 Mybatis的区别
JPA、Hibernate、Mybatis简单了解JPA:本身是一种ORM规范,不是ORM框架.由各大ORM框架提供实现.Hibernate:目前最流行的ORM框架,设计灵巧,文档丰富(完全自动操作),只是性能不好控制(自己去控制性能,不是很好控制)。Hibernate是一个完整的ORM框架,常规CRUD我们不需要写一句SQL;3.MyBatis:本是apache的一个开源项目iBatis,提供的持久层框架包括SQL Maps和Dao,允许开发人员直接编写SQL(更好灵活).(Sql操作方.转载 2020-09-12 16:58:01 · 681 阅读 · 0 评论 -
MySQL事务复习
MySQL事务复习1.1事务的概述事务(transaction),一个事务是一个完整的业务逻辑单元,不可再分,比如:银行账户转账,从A账户向B账户转账,需要执行两条update语句,一个update增加,一个update减少,以上两条update与句,同时成功,同时失败.不如允许出现一条成功一条失败,要想保证以上的两条DML语句同时成功,同时失败,那么就需要使用数据库”事务机制”和事务有关的语句只有DML语言,数据库操纵语句,(insert delete update)为什么?因原创 2020-09-04 12:36:06 · 207 阅读 · 1 评论 -
并查集详解------侠客风云传
文章目录杭电1232畅通工程开始解释并查集join函数路径压缩算法 并查集是我暑假从高手那里学到的一招,觉得真是太精妙的设计了。以前我无法解决的一类问题竟然可以用如此简单高效的方法搞定。不分享出来真是对不起party了。(party:我靠,关我嘛事啊?我跟你很熟么?)来看一个实例,杭电1232畅通工程杭电1232畅通工程 首先在地图上给你若干个城镇,这些城镇都可以看作点,然后告诉你哪些对城镇之间是有道路直接相连的。最后要解决的是整幅图的连通性问题。比如随意给你两个点,让你判断它们是否连通,或者问转载 2020-08-29 21:33:12 · 198 阅读 · 0 评论 -
sql语句 where 后条件执行先后顺序
结论如下:针对mysql,其条件执行顺序是 从左往右,自上而下针对orcale,其条件执行顺序是从右往左,自下而上mysqlwhere执行顺序是从左往右执行的,在数据量小的时候不用考虑,但数据量多的时候要考虑条件的先后顺序,此时应遵守一个原则:排除越多的条件放在第一个在用MySQL查询数据库的时候,连接了很多个过滤条件,发现非常慢。例如:SELECT … WHERE p.languages_id=1 AND t.type=1 AND p.products_id IN (472,474)转载 2020-08-18 14:29:51 · 3729 阅读 · 0 评论 -
JDBC模糊查询的4种方式
1:%放在占位符中parameters.add("%"+familyMemberQueryBean.getFullName()+"%");sql+=" and t.full_name like ?";2:使用concat函数parameters.add(familyMemberQueryBean.getFullName());sql+=" and t.full_name like concat(’%’,?,’%’)";3:使用转义字符\,百分号直接写在sql语句中parameters.add(原创 2020-08-15 16:10:57 · 2306 阅读 · 0 评论 -
DAO设计模式详细--实例开发
DAO设计模式详细–实例开发文章目录DAO设计模式详细--实例开发1.0 程序的分层思想3.0 项目的准备3.1数据库连接类3.2 开发value-object3.3 开发数据层3.3.1 开发数据层操作标准3.4 数据层实现类3.4.1jdbc中如何实现动态分页**3.5定义DAO工厂类3.6开发层3.7 开发层标准--IEmpServiceData Access Object,数据访问对象javabean是把视图和业务进行分离,dao是把数据库的操作和业务逻辑进行分离.主要的功能是用于进行数原创 2020-08-15 00:14:23 · 944 阅读 · 0 评论 -
数据库设计三范式
数据库设计三范式文章目录数据库设计三范式1.0什么设计范式?1.1三范式都是那些?1.2一对一怎么设计?怎么设计?1.0什么设计范式?设计表的依据,按照这三范式设计设计的表不会出现数据冗余.复习一下数据依赖 :完全依赖: 通过{学生学号, 选修课程名}可以得到{该生本门选修课程的成绩},而通过单独的{学生学号}或者单独的{选修课程名}都无法得到该成绩,则说明{该生本门选修课程的成绩}完全依赖于{学生学号,选修课程名}部分函数依赖: 通过{学生学号,课程号}可以得到{该生姓名},而通过单独原创 2020-08-12 21:08:30 · 281 阅读 · 1 评论 -
JDBC全面复习
JDBC全面复习文章目录JDBC全面复习1.0什么是JDBC?1. JDBC本质是什么?2.思考:为什么sun制定一套JDBC接口呢?2.0编写程序模拟JDBC本质2.1设计一个接口模拟JDBC2.2使用Resource Bundle进行读取className3.0JDBC编程六步骤(要背)3.1注册驱动3.2驱动代表的意义4.0执行sql与释放资源4.1mysql jdbc url具体参数全解5.0类加载方式注册驱动5.0从属性资源文件中读取连接数据库信息5.1使用资源绑定器绑定属性文件6.0处理结果集原创 2020-08-03 21:05:24 · 392 阅读 · 2 评论 -
数据结构期末考试试题总结
数据结构期末考试试题总结文章目录数据结构期末考试试题总结第1章 第一单元课程介绍; 数据结构第1~2章第2章 第二单元第3章栈和队列1.0中缀表达式为( A + B ) × C – D / E,则其后缀表达式为何?2.0中缀表达式为A+B×C-D,则其前缀表达式为何?第3章 第三单元第4章 串、数组、广义表1.0串“abcaabbabcab”的next数组为( )。(5.0分)2.0串“abcaabbabcab”的nextval为( )。(5.0分)第4章 第四单元第5章树和二叉树第5章 第五单元第5章树原创 2020-08-01 00:46:03 · 2685 阅读 · 0 评论 -
sql实战21:查找所有员工自入职以来的薪水涨幅情况
sql实战21:查找所有员工自入职以来的薪水涨幅情况文章目录sql实战21:查找所有员工自入职以来的薪水涨幅情况题目描述:题解:题目思路:参考题解题目描述:查找所有员工自入职以来的薪水涨幅情况,给出员工编号emp_no以及其对应的薪水涨幅growth,并按照growth进行升序(注:可能有employees表和salaries表里存在记录的员工,有对应的员工编号和涨薪记录,但是已经离职了,离职的员工salaries表的最新的to_date!='9999-01-01',这样的数据不显示在查找结果里面)原创 2020-07-26 10:38:20 · 1337 阅读 · 0 评论 -
透彻理解联合索引(a,b,c)
目录:文章目录1.0联合索引原理:2.联合索引实际应用1.0联合索引原理:用到索引的有a,ab,abc,ac 因为优化器会自动调整and前后的顺序,所以ba,cba,bca,ca都会用到索引,其他的都不会用到该索引。ac这一组仅仅是a用到索引。组合索引 有“最左前缀”原则,遇到范围查询(>、<、between、like)就会停止匹配。为什么是“最左匹配”原则,可以通过数据结构来看:联合索引是一颗b+树(a,b)2.联合索引实际应用情况描述:在MySQL的user表中,对a,b,c转载 2020-07-24 20:43:49 · 17611 阅读 · 3 评论 -
数据结构刷题-->剪枝
在刷题中会遇到,比如二叉树问题中会遇到剪枝的问题,我们需要,研究一下什么是剪枝剪枝可谓是搜索的灵魂所在,我们知道搜索是个愣头青小伙,一路撞到底可能都撞不到答案,他还可能要撞很多次。所以有什么方法可以让他撞的次数少一点呢?我们知道搜索会形成一个搜索树,这其中有很多的枝杈,但是他们中许多其实是无用或者重复的,我们就可以把他们都”剪“掉,或者我们可以使用别的方法去减少枝杈,这样的过程称为剪枝,我们之后的搜索题目都可以有体现。 常见的套路剪枝方法有这几种:1、优化搜索顺序:有时候需要由大到小倒序.2、排除原创 2020-07-23 17:34:30 · 621 阅读 · 0 评论 -
mysql生成不重复随机数(unique number generation)
待整理参考博客MySql给表中某字段插入随机数示例:给 表中的某个字段插入随机数数据,取值500~2000update 表名 set 字段名 = floor(500+rand()*1500);floor:函数只返回整数部分,小数部分舍弃,即向上取整rand:函数用于产生0(包含)到1(不包含)的随机数我们经常会遇到使用随机的问题,下面就是一种解决随机数的方法。在构造测试数据时,我们需要对测试表插入随机数据。构造测试数据的方法如下,仅以update为例说明步骤1:随机数的SQL函数为rand原创 2020-07-21 11:37:54 · 3181 阅读 · 0 评论 -
mysql判断奇数偶数,并思考效率
– 按位与select * from cinema WHERE id&1; – id先除以2然后乘2 如果与原来的相等就是偶数select * from cinema WHERE id=(id>>1)<<1; – 正则匹配最后一位select * from cinema WHERE id regexp '[13579]$';select * from cinema WHERE id regexp '[02468]$';– id计算select * fro转载 2020-07-17 15:38:00 · 415 阅读 · 0 评论 -
分组的时候除重SELECT COUNT(DISTINCT column(s)) FROM table
定义和用法可以一同使用 DISTINCT 和 COUNT 关键词,来计算非重复结果的数目。语法SELECT COUNT(DISTINCT column(s)) FROM table实战语法"Orders"表:CompanyOrderNumberIBM3532W3School2356Apple4698W3School6953例子 1SELECT COUNT(Company) FROM Orders结果:4例子 2SELECT CO原创 2020-07-17 13:03:41 · 425 阅读 · 0 评论 -
数据库–牛客数据库SQL实战(前20道题中等)汇总
牛客上的SQL实战题解,一共有60道题,我准备一个星期内解决完成,通过实践来巩固基础.会在每道题里写出自己的理解.与解题思路.会在每道题中写出对应与数据库关联的知识.SQL1 查找最晚入职员工的所有信息题目描述查找最晚入职员工的所有信息,为了减轻入门难度,目前所有的数据里员工入职的日期都不是同一天(sqlite里面的注释为–,mysql为comment)CREATE TABLE `employees` (`emp_no` int(11) NOT NULL, -- '员工编号'`birth_da原创 2020-07-11 18:22:11 · 522 阅读 · 1 评论 -
MySQL中 having和where区别
MySQL之Where和Having的区别对于使用where和having,相信很多人都有过困扰,今天就来讲一下我对where和having的认识:从整体声明的角度来理解:Where是一个约束声明,在查询数据库的结果返回之前对数据库中的查询条件进行约束,即在结果返回之前起作用,且where后面不能使用聚合函数Having是一个过滤声明,所谓过滤是在查询数据库的结果返回之后进行过滤,即在结果返回之后起作用,并且having后面可以使用聚合函数。所谓聚合函数,是对一组值进行计算并且返回单一值的函数:s原创 2020-07-04 19:00:06 · 298 阅读 · 0 评论 -
学习《MySQL必知必会》中所使用到的数据库和数据表
我们可以把该数据库看作是一个推销商使用的订单录入系统,比如喜欢鞋子的朋友可以把他看作是一个AJ推销商的录入系统,喜欢手机的朋友可以把他看作是一个手机推销商的录入系统。一个市场上的供货商都可以给推销上供货,推销商向顾客直接销售,这个数据库要完成一下几个任务管理供货商(一个推销商使用多个供货商的货物)管理产品目录(只要产品种类丰富才可以销路更广)管理顾客列表(要用心对待每个客户)录入顾客订单(客户订单可以统计很多东西)根据这几个任务,我们需要把作为关系数据库的紧密联系的6个表...原创 2020-07-01 23:42:06 · 1532 阅读 · 1 评论 -
Mysql字符集与校对规则
字符集是一套字符和编码的集合,校对规则是用于比较字符集的一套规则。所以字符集有两部分组成字符集合和对应的编码集合。比如说,现在有这几个字符:A B a b, 假设它们对应的编码分别是00, 01, 10, 11,那么ABab和[00,01,10,11]就组成了一套字符集。那么校对规则的作用就是规则A<B还是A>B。假设我们规定A<B,A=a,B=b,这个规定就组成了一个校对规则...转载 2020-03-27 11:28:59 · 139 阅读 · 0 评论