自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

小小博客爱分享

努力申请专家博客

  • 博客(17)
  • 问答 (1)
  • 收藏
  • 关注

原创 MySQL 那些常见的错误设计规范

依托于互联网的发达,我们可以随时随地利用一些等车或坐地铁的碎片时间学习以及了解资讯。同时发达的互联网也方便人们能够快速分享自己的知识,与相同爱好和需求的朋友们一起共同讨论。但是过于方便的分享也让知识变得五花八门,很容易让人接收到错误的信息。这些错误最多的都是因为技术发展迅速,而且没有空闲时间去及时更新已经发布的内容所导致。为了避免给后面学习的人造成误解,我们今天来看一看 MySQL 设计规范中几个常见的错误例子。主键的设计错误的设计规范:主键建议使用自增 ID 值,不要使用 UUID,MD5,H

2021-07-30 10:36:04 191 1

原创 MySQL SQL 注入

本章节将为大家介绍如何防止SQL注入,并通过脚本来过滤SQL中注入的字符。SQL注入可能是目前互联网上存在的最丰富的编程缺陷。 这是未经授权的人可以访问各种关键和私人数据的漏洞。 SQL注入不是Web或数据库服务器中的缺陷,而是由于编程实践较差且缺乏经验而导致的。 它是从远程位置执行的最致命和最容易的攻击之一。我们永远不要信任用户的输入,我们必须认定用户输入的数据都是不安全的,我们都需要对用户输入的数据进行过滤处理。以下实例中,输入的用户名必须为字母、数字及下划线的组合,且用户名长度为 8 到

2021-07-29 10:12:10 206

原创 MySQL外键约束

关系键是关系数据库的重要组成部分。关系键是一个表中的一个或几个属性,用来标识该表的每一行或与另一个表产生联系。 其中就包括外键1 主键(primary key或unique key)又称主码,数据库表中对储存数据对象予以唯一和完整标识的数据列或属性的组合。一个数据列只能有一个主键,且主键的取值不能缺失,即不能为null。技术角度看,primary key和unique key有相似之处。但还是有差异:作为primary key的域/域组不能为null;而unique key可以 在一个表中

2021-07-28 10:07:34 1394

原创 mysql面试之ORM

先回顾下之前操作数据库的方式,用的是jdbc连接数据库,(操作java代码来操作数据库)jdbc就是一个接口,用它可以来访问数据库,操作数据库。jbbc操作mysql数据库步骤:因为用statement有sql注入的危险,后来使用的是preparedStatement。详情自行复习。jdbc如果有大量的连接怎么办,每次连接都要向数据库要求一个connection,这样会造成数据库的很多系统资源,甚至会导致系统崩溃,后来就有了连接池来解决这个问题。数据库连接池的基本思想就是为数据库连接建立

2021-07-27 10:29:03 146

原创 MySQL 处理重复数据

有些 MySQL 数据表中可能存在重复的记录,有些情况我们允许重复数据的存在,但有时候我们也需要删除这些重复的数据。本章节我们将为大家介绍如何防止数据表出现重复数据及如何删除数据表中的重复数据。防止表中出现重复数据你可以在 MySQL 数据表中设置指定的字段为 PRIMARY KEY(主键) 或者 UNIQUE(唯一) 索引来保证数据的唯一性。让我们尝试一个实例:下表中无索引及主键,所以该表允许出现多条重复记录。CREATE TABLE person_tbl( first_na

2021-07-23 09:45:47 147

原创 数据工程师面试常见题目汇总

1、为什么UNIONALL比UNION快? 答:因为在使用UNION的时候,需要删除重复的记录,但是使用UNION ALL的时候不用删除。所以如果在知道需要UNION的查询不可能出现重复数据的时候,一定要使用UNIONALL。2、什么是唯一索引? 答:唯一索引可以确保索引列不包含重复的值。在多列唯一索引的情况下,该索引可以确保索引列中每个值组合都是唯一的。聚集索引和非聚集索引都可以是唯一的。因此,只要列中的数据是唯一的,就可以在同一个表上创建一个唯一的聚集索引和多个...

2021-07-22 10:12:48 5825 1

原创 如何防止sql注入?防止sql注入方法介绍

一、什么叫SQL注入攻击?sql注入简介SQL注入是较为普遍的互联网攻击方法,它并不是通过电脑操作系统的BUG来完成攻击,而是对于程序编写时的疏漏,利用SQL语句,达到无帐号登录,乃至改动数据库的目的。SQL注入产生的原因便是:没经查验或是未充分检验的输入数据,出现意外变成了sql代码而被执行。对于SQL注入,则是递交的数据,被数据库系统编译而造成了开发人员预估以外的问题。也就是说,SQL注入是用户的输入信息,在连接SQL语句的过程中,跨越了数据本身,变成了SQL语句逻辑的一部分,随后被拼凑的SQL

2021-07-21 10:17:57 15349 1

原创 MySQL 序列使用

MySQL 序列是一组整数:1, 2, 3, …,由于一张数据表只能有一个字段自增主键, 如果你想实现其他字段也实现自动增加,就可以使用MySQL序列来实现。本章我们将介绍如何使用MySQL的序列。使用 AUTO_INCREMENTMySQL 中最简单使用序列的方法就是使用 MySQL AUTO_INCREMENT 来定义列。实例以下实例中创建了数据表 insect, insect 表中 id 无需指定值可实现自动增长。mysql> CREATE TABLE insect

2021-07-20 10:17:28 97 1

原创 MySQL8.0版本选型建议

前言:MySQL 8.0第一个GA(General Availability)版本(正式、可用于生产的版本)于2018/4/19发布至今已有3年。8.0是一个全新的版本,增加了数百项功能新特性,重构了SQL解析器,在性能和安全性上越来越向商业数据库靠拢。5.7版本优越的稳定性和性能已经广泛应用,如今性能、安全性和众多企业级特性提升让我们思考是否该使用8.0版本。本文从以下几个方面来了解一下。01官方补丁维护生命周期管理如上图所示,这是oracle官方对软件产品的生命周期管理,MySQL被收.

2021-07-19 13:44:59 6600 2

原创 橙心优选-数据仓库高级工程师面试

自我介绍正常介绍就好。报下大名,经历公司与参与项目,负责事项与业绩产出。思想和方法论数据仓库理解:架构、分层 数据仓库理解:主题域、好处 范式建模和维度建模区别,混合使用 场景举例 两种建模的解释和理解 区别 雪花模型 星型模型 解释理解 实体建模和维度建模区别 ER模型图理解解释 模型会随着业务进行迭代优化手段 拉链表理解解释 场景举例,全量拉链vs增量拉链 数据质量如何保证的 讲一下数据治理 如何做元数据管理,实践 怎么理解数据中台与OneData思想Hive...

2021-07-16 10:26:29 334

原创 MySQL 元数据

所谓元数据,就是表示数据本身或关系的数据,这些数据会有点奇怪,一般来说,只要不是我们存储到数据库里的数据,大多都可以理解为元数据。描述数据库的任何数据—作为数据库内容的对立面—是元数据。因此,列名、数据库名、用户名、版本名以及从SHOW语句得到的结果中的大部分字符串是元数据。还包括INFORMATION_SCHEMA数据库中的表中的内容,因为定义的那些表存储关于数据库对象的信息。获取查询语句影响的记录数PERL 实例在 DBI 脚本中, 语句影响的记录数通过函数 do( ) 或 execut

2021-07-12 10:15:35 189 1

原创 sql面试:sql中的行转列和列转行

SQL是IT行业很多岗位都要求具备的一项能力,对于数据岗位而言更是如此,甚至说扎实的SQL基础也往往是入职这些岗位的必备技能。而在SQL面试中,一道出镜频率很高的题目就是行转列和列转行的问题,可以说这也是一道经典的SQL题目,本文就这一问题做以介绍分享。给定如下模拟数据集,这也是SQL领域经典的学生成绩表问题。两张期望的数据表分别如下:1)长表:2)宽表:考察的问题就是通过SQL语句实现在这两种形态间转换,其中长表转为宽表即行转列,宽表转为长表即列转行。01 行转列:sum+i.

2021-07-09 10:26:05 329 1

原创 MySQL忘记密码怎么办?

如何修改密码:在我们记得密码的情况下我们常用的修改密码的方法有三种:方法一:立即生效法使用如下指令:SET PASSWORD FOR 'user'@'host' = PASSWORD(‘password');其中:User 即用户名 host即主机名,用于指定用户在哪个主机上登陆,本地用户为localhost。 Password 为新的密码 *此指令执行后,对密码的修改立即生效。方法二:不立即生效法使用如下指令:UPDATE mysql.user SET pass

2021-07-07 10:57:53 1091 1

原创 【数据库教程】MySQL 复制表

如果我们需要完全的复制MySQL的数据表,包括表的结构,索引,默认值等。 如果仅仅使用CREATE TABLE … SELECT 命令,是无法实现的。本章节将为大家介绍如何完整的复制MySQL数据表,步骤如下:使用 SHOW CREATE TABLE 命令获取创建数据表(CREATE TABLE) 语句,该语句包含了原数据表的结构,索引等。复制以下命令显示的SQL语句,修改数据表名,并执行SQL语句,通过以上命令 将完全的复制数据表结构。如果你想复制表的内容,你就可以使用 INSERT INTO

2021-07-06 10:24:38 348 1

原创 sql和mysql的区别

什么是SQL?SQL是一种用于操作数据库的语言。SQL是用于所有数据库的基本语言。不同数据库之间存在较小的语法更改,但基本的SQL语法基本保持不变。SQL是StructuredQueryLanguage 的简短缩写。根据ANSI(美国国家标准协会),SQL是操作关系数据库管理系统的标准语言。SQL用于访问,更新和操作数据库中的数据。它的设计允许管理RDBMS中的数据,例如MYSQL。SQL语言还用于控制数据访问以及数据库模式的创建和修改。什么是MYSQL?MySQL是在90年代中期开...

2021-07-05 09:58:48 852 1

原创 SQL面试:如何快速定位消耗CPU最高的sql语句

如何快速定位消耗 CPU 最高的 sql 语句?看看下面的介绍。概述如果是Oracle数据库我们可以很容易通过sql来定位到当前数据库中哪些消耗CPU高的语句,而mysql数据库可以怎么定位呢?这里用一个简单例子说明下…主要是了解如何定位的思路,具体看官网介绍..参考:https://www.percona.com/blog/2020/04/23/a-simple-approach-to-troubleshooting-high-cpu-in-mysql/主要意思是针对定位CPU的.

2021-07-02 10:18:50 180 1

转载 【数据库教程】MySQL 临时表

当工作在非常大的表上时,你可能偶尔需要运行很多查询获得一个大量数据的小的子集,不是对整个表运行这些查询,而是让MySQL每次找出所需的少数记录,将记录选择到一个临时表可能更快些,然后在这些表运行查询临时表只在当前连接可见,当关闭连接时,Mysql会自动删除表并释放所有空间。如果你使用PHP脚本来创建MySQL临时表,那每当PHP脚本执行完成后,该临时表也会自动销毁。实例以下展示了使用MySQL 临时表的简单实例,以下的SQL代码可以适用于PHP脚本的mysql_query()函数。mysq

2021-07-01 10:35:20 123 1

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除