1.数据库结构优化 一个好的数据库设计方案对于数据库的性能往往会起到事半功倍的效果。优化设计需要考虑数据冗余、查询和更新的速度、字段的数据类型是否合理等多方面的因素。 将字段很多的表分解成多个表 概述:对于字段较多的表,如果有些字段的使用频率很低,可以将这些字段分离出来形成新表。这样可以减少表的数据量,从而提高查询性能。 增加中间表 概述:对于需要经常联合查询的表,可以建立中间表以提高查询效率。通过建立中间表,将需要通过联合查询的数据插入到中间表中,然后将原来的联合查询改为对中间表的查询。 增加冗余字段 概述:设计数据表时应尽量遵循范式理论的规约,尽可能地减少冗余字段,使数据库设计更加精致、优...

  YQSzfXzmOgFb   2024年08月14日   35   0   0 MySQL

写在前面 前面讲的是面向对象中的继承思想,下面让我们来看看多态这部分的内容! Java面向对象概念概述 多态 概述:某一个事物在不同状态下的多种状态。 实现多态的三大前提: 要有继承关系。 要有方法的重写。 要有父类的引用指向子类对象。 访问成员的特点: 成员变量:编译时看左,运行时看左。 成员方法:编译时看左,运行时看右。 静态成员方法:编译时看左,运行时看左。 多态的好处: 提高了程序的维护性(继承)。 提高了程序的扩展性(多态)。 多态的弊端: 在多态的形式下,无法使用子类中特有的成员方法。 解决方案:向下转型(例如,曹操曹植的故事)。 向下转型可能会遇到的问题:Class...

  YQSzfXzmOgFb   2024年08月13日   36   0   0 Java

视图 1.为什么要使用视图?什么是视图? 为了提高复杂SQL语句的复用性和表操作的安全性,MySQL数据库管理系统提供了视图特性。所谓视图,本质上是一种虚拟表,在物理上是不存在的,其内容与真实的表相似,包含一系列带有名称的列和行数据。但是,视图并不在数据库中以储存的数据值形式存在。行和列数据来自定义视图的查询所引用基本表,并且在具体引用视图时动态生成。 视图使开发者只关心感兴趣的某些特定数据和所负责的特定任务,只能看到视图中所定义的数据,而不是视图所引用表中的数据,从而提高了数据库中数据的安全性。 2.视图有哪些特点?视图的特点如下: 视图的列可以来自不同的表,是表的抽象和在逻辑意义上建...

  YQSzfXzmOgFb   2024年08月11日   55   0   0 MySQL

写在前面 前面讲的是面向对象中的封装思想,下面让我们来看看继承这部分的内容! 继承 概述 多个类中存在相同属性和行为时,将这些内容抽取到单独一个类中,那么多个类无需再定义这些属性和行为,只要继承那个类即可。 通过extends关键字可以实现类与类的继承:class子类名extends父类名{}单独的这个类称为父类,基类或者超类;这多个类可以称为子类或者派生类。有了继承以后,我们定义一个类的时候,可以在一个已经存在的类的基础上,还可以定义自己的新成员。 子类只能继承父类所有非私有的成员(成员方法和成员变量),其实这也体现了继承的另一个弊端,打破了封装性,子类不能继承父类的构造方法,但是可以通过s...

  YQSzfXzmOgFb   2024年08月10日   87   0   0 Java

索引 百万级别或以上的数据如何删除?关于索引:由于索引需要额外的维护成本,因为索引文件是单独存在的文件,所以当我们对数据的增加、修改、删除都会产生额外的对索引文件的操,这些操作需要消耗额外的IO,会降低增/改/删的执行效率。所以,在我们删除数据库百万级别数据的时候,查询MySQL官方手册得知删除数据的速度和创建的索引数量是成正比的。 所以我们想要删除百万数据的时候可以先删除索引(此时大概耗时三分多钟)。 然后删除其中无用数据(此过程需要不到两分钟)。 删除完成后重新创建索引(此时数据较少了)创建索引也非常快,约十分钟左右。 与之前的直接删除绝对是要快速很多,更别说万一删除中断,一切删除会回...

  YQSzfXzmOgFb   2024年08月08日   58   0   0 MySQL

数据库基础知识 为什么要使用数据库? 数据保存在内存 优点:存取速度快 缺点:数据不能永久保存 数据保存在文件 优点:数据永久保存 缺点: 速度比内存操作慢,频繁的IO操作。 查询数据不方便 数据保存在数据库 数据永久保存 使用SQL语句,查询方便效率高。 管理数据方便 什么是SQL? 结构化查询语言(StructuredQueryLanguage)简称SQL,是一种数据库查询语言。 作用:用于存取数据、查询、更新和管理关系数据库系统。 什么是MySQL? MySQL是一个关系型数据库管理系统,由瑞典MySQLAB公司开发,属于Oracle旗下产品。MySQL是最流...

  YQSzfXzmOgFb   2024年08月07日   44   0   0 MySQL

写在前面 前面给了关于java方法和数组的十题编程题,如果你能有思路很快速地完成它,说明你这部分的基础知识很好,接下来就来看看后面的面向对象的相关知识吧! 面向对象 概述:不断地创建对象,使用对象,指挥对象做事情的思想。 类和对象的关系: 类: 是java的基本单位,主要使用用于描述现实生活的事物。由成员变量(属性)和成员方法(行为)以及构造方法组成。 对象: 可以看成是一个类的具体的实例,通过一个类造出多个不同的对象。语句定义格式:类名对象名=new类名(); 对象访问成员的方式:成员变量:对象名.成员变量成员方法:对象名.成员方法(xxx) 接下来开始讲面向对象的三大特征: 封装 概述:隐...

  YQSzfXzmOgFb   2024年08月07日   30   0   0 Java

写在前面 大家好,不知道前面的20题大家写的怎么样,前面分享的20题是SQL中查询的基础题型,这部分被称为DQL部分,是每个学习MySQL必须要学会的部分,下面就让我来介绍MySQL中的TCL部分,也就是事务部分。 ACID四大特性 事务的概述 事务的ACID特性可以确保银行不会弄丢你的钱。而在应用逻辑中,要实现这一点非常难,甚至可以说是不可能完成的任务。一个兼容ACID的数据库系统,需要做很多复杂但可能用户并没有觉察到的工作,才能确保ACID的实现。 原子性(Atomicity) 单个事务,为一个不可分割的最小工作单元,整个事务中的所有操作要么全部commit成功,要么全部失败rollbac...

  YQSzfXzmOgFb   2024年08月07日   46   0   0 MySQL

写在前面 大家前面的方法和数组学的怎么样了,快来看看这些题你能不能快速地说出答案,数组和方法在Java学习中还是非常重要的,快来检测你的薄弱点在哪,及时查漏补缺! 填空题 1.数组会在内存中开辟一块连续固定大小的空间,每个空间相当于之前的一个变量,称为数组的元素。数组的长度一经确定,就无法再改变。2.要获取一个数组的长度,可以通过Length属性来获取,但获取的只是为数组分配的空间的数量,而不是数组中实际已经存放的元素的个数。3.数组的定义仅仅是给出了数组名字和元素的数据类型,要想真正的使用数组还必须使用new关键字为它分配内存空间。4.创建数组后,系统会给每一个数组元素一个默认的值,如Str...

  YQSzfXzmOgFb   2024年08月07日   53   0   0 Java

写在前面 继续昨天Java中的数组和方法部分的习题,今天写十题编程题,来看看你能写出来几题。答案也是仅供参考,如果有更好的解法欢迎在下面留言! 题目展示 1.数组查找操作:定义一个长度为10的一维字符串数组,在每一个元素存放一个单词;然后运行时从命令行输入一个单词,程序判断数组是否包含有这个单词,包含这个单词就打印出“Yes”,不包含就打印出“No”。代码: publicstaticvoidmain(String[]args){ System.out.println("请输入一个单词:"); Scannersc=newScanner(System.in); Stringword=sc.next...

  YQSzfXzmOgFb   2024年08月07日   74   0   0 Java

写在前面 昨天给了十题编程题,如果你能有思路很快速地完成它,说明你的Java数据类型、运算符、选择语句、循环语句部分的基础知识很好,接下来就来看看后面的方法、数组以及他们在JVM中的内存划分知识吧! 方法 语句定义格式: 修饰符返回值类型方法名(参数类型参数名,参数类型参数名,......){方法体;return返回值;} 使用通俗一点的语言就是说,Java中定义一个方法需要指定修饰符、返回值类型(如果是空类型则写void)、方法的名字以及后面使用小括号将一个参数列表括起来,最后使用一个大括号,在里面写上方法体和return返回值。 这里的修饰符就像是public、static等修饰方法的符号...

  YQSzfXzmOgFb   2024年08月07日   44   0   0 Java

写在前面 今天继续前面的20题之后的练习,数据都是一样的,可以直接使用,来看看你的sql功底降了没。 基础20题 1.查询每个员⼯的姓名、邮箱、职位名称以及所在部⻔名称。 SELECT CONCAT(last_name,first_name)as姓名, email, job_title, department_name FROM employeese JOINdepartmentsdONe.department_id=d.department_id JOINjobsjONe.job_id=j.job_id; 2.查询⽉薪最⾼的员⼯的姓名、职位名称以及⽉薪。 SELECT ...

  YQSzfXzmOgFb   2024年08月07日   55   0   0 MySQL

写在前面 昨天说了一下Java中的数据类型、运算符、选择语句、循环语句部分的基础知识,今天写的编程题就是来检验这部分的成果,来看看你能写出来几题。答案也是仅供参考,如果有更好的解法欢迎在下面留言! 题目展示 1.输入自己的名字,年龄和性别,分别用不同的变量接收,并将输入的信息做输出。代码: publicstaticvoidmain(String[]args){ Scannerscanner=newScanner(System.in); System.out.println("Pleaseinputyournamehere:"); Stringname=scanner.next(); Syste...

  YQSzfXzmOgFb   2024年08月07日   51   0   0 Java

写在前面 今天要讲的是JAVA数据类型、运算符、选择语句、循环语句部分的基础知识,来看看你会不会! 基础知识1 Java语言规定标识符由字母、下划线、美元符号和数字组成,并且第一个字符不能是数字。 Java中整型变量有byte、short、int和long四种,不同类型的整数变量在内存中分配的字节数不同,数值范围也不同。对于int型变量,内存分配4个字节。 在Java中浮点型变量有float和double两种,对于float型变量,内存分配4个字节,尾数可精确到7位有效数字,对于double型变量,内存分配8个字节。 charc=’a’;System.out.println(c+1);运行结...

  YQSzfXzmOgFb   2024年08月07日   34   0   0 Java

写在前面 大家好,不知道前面的20题大家写的怎么样,前面分享的20题是SQL中查询的基础题型,这部分被称为DQL部分,是每个学习MySQL必须要学会的部分,下面就让我来介绍MySQL中的其他部分。 回顾DQL部分 先介绍一下sql语句的语法和执行顺序(序号代表顺序由19): select查询列表(7) from表名(1) [ jointypejoin表2(2) on连接条件。(3) where筛选条件(4) groupby分组字段(5) having分组后的筛选(6) orderby排序的字段(8) ] limit[offset],size;(9) 其中: select:指定要查询的列或表达式...

  YQSzfXzmOgFb   2024年08月07日   41   0   0 MySQL

数据获取 表的数据信息(sql文件)放在这个链接里了,提取码:52xz,需要的自行提取。数据来自网上的练习,已经给小伙伴们总结好了。 https://pan.baidu.com/s/11YMWaXtZb9K60cpOuYTwag 将数据导入到mysql中 大家可以直接在navicat运行该脚本,就可以直接导入数据了,如果遇到问题很可能是编码问题,改一下数据库的编码为gb2312,如图: 基础20题 点击新建查询就可以写我们的mysql基础20题了。 (1)查询和Zlotkey相同部门的员工姓名和工资 SELECT last_name, salary FROM employees WH...

  YQSzfXzmOgFb   2024年08月07日   75   0   0 MySQL
关注 更多

空空如也 ~ ~

粉丝 更多

空空如也 ~ ~