数据库
文章平均质量分 80
qililong88
这个作者很懒,什么都没留下…
展开
-
Elasticsearch面试题
1.为什么要使用Elasticsearch? 因为在我们商城中的数据,将来会非常多,所以采用以往的模糊查询,模糊查询前置配置,会放弃索引,导致商品查询是全表扫面,在百万级别的数据库中,效率非常低下,而我们使用ES做一个全文索引,我们将经常查询的商品的某些字段,比如说商品名,描述、价格还有id这些字段我们放入我们索引库里,可以提高查询速度。2.Elasticsearch是如何实现Master选举的? Elasticsearch的选主是ZenDiscovery模块负责的,主要包含Ping(节转载 2020-09-18 20:13:20 · 2390 阅读 · 1 评论 -
MySQL实战9-45
1、普通索引和唯一索引,应该怎么选择?查询过程:普通索引来查找到满足条件的第一个记录 后,需要查找下一个记录,直到碰到第一个不满足条件的记录。对于唯一索引来说,由于索引定义了唯一性,查找到第一个满足条件的记录后,就会停止继续检索。性能差距微乎其微。InnoDB 的数据是按数据页为单位来读写的。也就是说,当需要读一条记录的时候,并不是将这个记录本身从磁盘读出来,而是以页为单位,将其整体读入内存。在...原创 2020-04-27 18:22:10 · 670 阅读 · 0 评论 -
MySQL实战基础1-8
MySQL基本架构:Server 层包括连接器、查询缓存、分析器、优化器、执行器等,涵盖 MySQL 的大多数核心服务功能,以及所有的内置函数(如日期、时间、数学和加密函数等),所有跨存储引擎的功能都在这一层实现,比如存储过程、触发器、视图等。而存储引擎层负责数据的存储和提取。其架构模式是插件式的,支持 InnoDB、MyISAM、Memory 等多个存储引擎连接器:建立连接、获取...原创 2020-04-22 01:49:47 · 255 阅读 · 0 评论 -
JDBC和MyBatis防止SQL注入攻击的原理
JDBC 的 PrepareStatement 可以阻止 SQL 注入攻击,MyBatis 之类的 ORM 框架也可以阻止 SQL 注入,如何实现的?因为SQL语句在程序运行前已经进行了预编译,在程序运行时第一次操作数据库之前,SQL语句已经被数据库分析,编译和优化,对应的执行计划也会缓存下来并允许数据库已参数化的形式进行查询,当运行时动态地把参数传给PreprareStatement时,即使参...原创 2020-03-27 15:28:39 · 481 阅读 · 0 评论 -
mybites查询 对象包含对象List的方法 一对多方法sql的写法
Dao.xml中要定义这两个resultMap ,当然这property就是对象里的字段,这column就是表中的字段 auditRecordPageList" resultMa原创 2017-09-18 16:03:26 · 3601 阅读 · 0 评论 -
sql server 性能问题总结
刚刚看了sqlServer性能优化的书,公司席哥有正好开会总结这个问题,我把会议记录的读书内容大题结合提炼一下大家分享原创 2017-04-27 17:53:40 · 723 阅读 · 0 评论 -
SQL Server数据库partition by 与ROW_NUMBER()函数使用详解
关于SQL的partition by 字段的一些用法心得先看例子:if object_id('TESTDB') is not null drop table TESTDBcreate table TESTDB(A varchar(8), B varchar(8))insert into TESTDBselect 'A1', 'B1' union all转载 2017-06-23 15:52:46 · 1808 阅读 · 0 评论 -
数据库设计总结
转载,出处在篇尾第一章 需求分析设计简介根据业务需要,结合选用的DBMS,设计出最有的数据存储模型并建立好数据库中的表结构及表与表之间的关系使之有效的存储和高效的访问。 数据库设计在系统设计开始就应该对数据库进行良好的设计,这样才能保证以后对业务发展的需要进行改进,保证系统的稳定性。 设计步骤 需求分析:数据库需求的作用点(转载 2017-06-21 11:59:48 · 1235 阅读 · 0 评论 -
tomcat+spring配置jndi数据源
项目中用到了jndi数据源,这样的好处做到了项目代码与数据源的解耦,因为jndi数据源是配置在tomcat容器的配置文件里的,这样要更换数据源或者数据源信息发生变化,只需要修改配置文件就可以了,不需要修改项目,这就是jndi的优点,不过也有一些缺点,比如在进行Junit单元测试的时候是不需要启动容器的,这样就需要对数据源进行单独的配置。不过项目中都是这样用的,我总结一下项目中jndi数据源的配置方原创 2017-06-05 16:21:22 · 562 阅读 · 0 评论 -
SQLService sql常见问题总结
1: 带 or 条件的一定要记得加括号。 2:原创 2017-04-27 18:34:49 · 275 阅读 · 0 评论 -
if exists 的else不执行问题
separator=";" close=" "> if exists ( select * from wit_selection.zc_scmMaterial where matcode=#{item.matcode}) begin updatewit_selection.zc_scmMaterial set matcode=原创 2016-11-01 14:24:38 · 2133 阅读 · 0 评论 -
多线程、quartz 定时器同步两个数据库,匹配数据表流程和详情
同步数据不外乎两种方法:一是通过对方ERP提供的API接口直接操作数据库,二是通过中间库的形式同步数据库,可想而知最好的办法是第一种,第二种方法我们采取每一分钟读取一次的方法,会有时间误差,且开销也比较高。由于某些特殊原因我们暂且采用了第二种方法同步数据,基本流程如上图所示,要匹配供应商的数据库,把数据拿到我本地进行操作,供应商那边分出了一个中间库给我们操作,对方只提供商品的基本信息,存在四个表中原创 2016-09-14 15:19:17 · 6052 阅读 · 0 评论