sql
文章平均质量分 91
寻烟的衣袖
这个作者很懒,什么都没留下…
展开
-
MySQL中TIMESTAMP和DATETIME的区别和char,varchar,text,blob的区别
一、关于TIMESTAMP和DATETIME的比较一个完整的日期格式如下:YYYY-MM-DD HH:MM:SS[.fraction],它可分为两部分:date部分和time部分,其中,date部分对应格式中的“YYYY-MM-DD”,time部分对应格式中的“HH:MM:SS[.fraction]”。对于date字段来说,它只支持date部分,如果插入了time部分的内容,它会丢弃掉该部分的内容,并提示一个warning。如下所示:mysql> create table test(id int原创 2022-04-01 22:16:07 · 607 阅读 · 0 评论 -
mysql索引优化2
之前写过一篇索引的总结,但是发现有些东西还是没有涉及到又或是不够详细,这次再继续写索引type使用explan 解释sql语句时,会有一列type,这个type标志了该索引的级别,EXPLAIN执行计划中type字段分为以下几种:ALL ,INDEX ,RANGE ,REF ,EQ_REF CONST, SYSTEM NULL,性能从最差到最好上面各类扫描方式由快到慢:system > const > eq_ref > ref >原创 2021-04-08 21:26:36 · 301 阅读 · 0 评论 -
Mybatis中的常用标签
MyBatis的trim标签一般用于去除sql语句中多余的and关键字,逗号,或者给sql语句前拼接 “where“、“set“以及“values(“ 等前缀,或者添加“)“等后缀,可用于选择性插入、更新、删除或者条件查询等操作。trim标签有四个属性:prefix,prefixOverrides,suffix,suffixOverrides下面使用几个例子来说明trim标签的使用。有这样的一个例子:<select id="findActiveBlogLike" resultType=原创 2021-03-30 15:30:30 · 1746 阅读 · 0 评论 -
MyBatis传入的参数
在讲mybatis入参问题时,先把架构讲下系统架构关键组件SqlSession:selectOne、selectList、selectMap、select、insert、update、delete、commit、rollback、flushStatements、close、clearCache、getConfiguration、getMapper、getConnectionExecutor:update, query, flushStatements, commit, rollback,getT原创 2021-01-12 16:48:29 · 842 阅读 · 0 评论 -
jdbc原理详解
最近做了一个切换数据源的功能,发现自己对mybatis以及数据库连接底层原理了解不够,特此先写篇关于jdbc文章增加自己的深度先入一个基本的代码,用jdbc连接数据库 private String url="jdbc:mysql://localhost:3306/表名"; private String name="数据库名称"; private String pwd="数据库密码"; 1、 Class.forName("com.mysq原创 2020-07-02 22:13:51 · 821 阅读 · 0 评论 -
MySQL之Sql语句的执行原理
我们在数据库层执行SQL语句时,应用程序会连接到相应的数据库服务器,把SQL语句发送给服务器处理。那么sql语句执行时,有哪些步骤呢1、查询缓存服务器在解析一个查询语句之前,如果查询缓存是打开的(MySQL默认打开,可以使用have_query_cache查看),在接收到查询请求后,并不会直接去数据库查询,而是在数据库的查询缓存中找是否有相对应的查询数据(某条给定的查询语句在第一次执行时,服务器会缓存这条查询语句和他返回的结果。),如果存在,那么在返回查询结果之前,MySQL会检查一次用户权限。这仍然无原创 2020-07-02 21:18:49 · 507 阅读 · 0 评论