数据库
流年の雨
这个作者很懒,什么都没留下…
展开
-
exists和no exists 在sql中的区别
之所以要说这个问题,是因为项目中用到了not exists,但两者写的语句只有一点差别,结果一个有问题了,一个没问题。具体问题下面详细说明,先来看看exists如何应用。exists: 强调的是是否有返回集,不需知道具体返回的是什么,比如: SELECT * FROM customer WHERE not EXISTS ( SELEC...转载 2018-07-14 11:21:46 · 3811 阅读 · 1 评论 -
项目数据库报错:未明确定义列
数据库查询时,两张表中出现相同字段,需要给其中一个重命名原创 2018-06-05 15:59:14 · 1488 阅读 · 0 评论 -
mybatis-plus
mybatis-plus思维导图,让mybatis-plus不再难懂mybatisMybatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Old Java Objects,普通的...转载 2018-04-23 15:23:09 · 602 阅读 · 0 评论 -
Navicat Premium 12.0.22的安装与破解
一、安装 Navicat Premium 12.0.22的下载链接:https://pan.baidu.com/s/1swRY_fwIZfufdxDZj3hDyw 密码:09k8 安装步骤就是一路向下二、破解 Navicat Premium 12破解补丁的下载链接:https://pan.baidu.com/s/1aey9jSZfClnTeQc6CQwh4g 密码:qk9o 破解补丁文件夹...原创 2018-04-25 17:24:02 · 6238 阅读 · 0 评论 -
sql语句优化
select * from a,b今天代码中写脚本用了select * from a,b where a.id = b.id.然后同事说让我写内连接,我说这就是内连接啊。结果同事说这怎么会是内连接,这是笛卡尔乘积。我当时有点惊呆了,在原来公司都是这样写啊,难道这不是内连接,后来百度一下,发现:单纯的select * from a,b是笛卡尔乘积。但是如果对两个表进行关联:select ...原创 2018-09-01 13:01:46 · 194 阅读 · 0 评论 -
Oracle 函数大全
F.1字符函数——返回字符值 (chr,concat,initcap,lower,lpad/rpad,nls_initcap,nls_lower,nls_upper,regexp_replace,regexp_substr,replace,trim/ltrim/rtrim,soundex,substr,translate,upper) 说明:可以sql和plsql中使用 ...原创 2018-08-17 12:29:04 · 162 阅读 · 0 评论 -
SQL的case when then else end语句的用法
SELECT a.managecom, a.subtype, count(*) loadsucc, sum(case when a.state in ('4', '5', '6', '7', '8', '9') then 1 else 0 end) recogsucc, sum(case when a.state in ('3', '12', '...原创 2018-07-25 12:10:53 · 247 阅读 · 0 评论 -
存储过程详解
Transact-SQL中的存储过程,非常类似于Java语言中的方法,它可以重复调用。当存储过程执行一次后,可以将语句缓存中,这样下次执行的时候直接使用缓存中的语句。这样就可以提高存储过程的性能。Ø 存储过程的概念 存储过程Procedure是一组为了完成特定功能的SQL语句集合,经编译后存储在数据库中,用户通过指定存储过程的名称并给出参数来执行。 存储过程中可以包含逻辑控...原创 2018-08-29 11:57:48 · 350 阅读 · 0 评论 -
Oracle DBLINK 简单使用
oracle在进行跨库访问时,可以通过创建dblink实现,今天就简单的介绍下如果创建dblink,以及通过dblink完成插入、修改、删除等操作 首先了解下环境:在tnsnames.ora中配置两个数据库别名:orcl(用户名:wangyong 密码:1988)、orcl2(用户名:wangyong 密码:123456),在orcl中 创建database link来...原创 2018-08-29 11:56:10 · 143 阅读 · 0 评论 -
SQL注入详解
1.1.2 正文SQL Injection:就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令。具体来说,它是利用现有应用程序,将(恶意)的SQL命令注入到后台数据库引擎执行的能力,它可以通过在Web表单中输入(恶意)SQL语句得到一个存在安全漏洞的网站上的数据库,而不是按照设计者意图去执行SQL语句。首先让我们了解什么时候可能发生SQ...原创 2018-06-15 17:33:55 · 175 阅读 · 0 评论 -
数据权限管理中心 - 基于mybatis拦截器实现
数据权限管理中心由于公司大部分项目都是使用mybatis,也是使用mybatis的拦截器进行分页处理,所以技术上也直接选择从拦截器入手需求场景第一种场景:行级数据处理原sql:select id,username,region from sys_user ;需要封装成:select * from ( select id,username,region from sys_user ) w...原创 2018-06-15 17:23:10 · 5188 阅读 · 0 评论 -
oracle数据库
一. Oracle字符串操作字符串类型 1.CHAR和VARCHAR2类型 表示字符串数据类型,用来在表中存放字符串信息; CHAR存放定长字符,即存不满补空格(浪费空间,节省时间);VARCHAR2存放变长字符,存多少占用多少(浪费时间,节省空间); 按照字符的自然顺序排序。 2.CHAR和VARCHAR2的存储编码 ...原创 2018-05-28 18:41:40 · 346 阅读 · 0 评论 -
mybatis-plus思维导图
mybatis Mybatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录。但mybatis有个让我比较...原创 2018-06-05 16:10:05 · 1693 阅读 · 0 评论 -
mysql中sql语句中常见的group_concat()函数意思以及用法,oracle中与其一样的功能函数是wmsys.wm_concat()
1.group_concat(),手册上说明:该函数返回带有来自一个组的连接的非NULL值的字符串结果。比较抽象,难以理解。通俗点理解,其实是这样的:group_concat()会计算哪些行属于同一组,将属于同一组的列显示出来。要返回哪些列,由函数参数(就是字段名)决定。分组必须有个标准,就是根据group by指定的列进行分组。 group_concat函数应该是在内部执行了grou...原创 2018-08-14 17:18:07 · 1080 阅读 · 0 评论 -
Oracle高级查询之over(partition by...)
为了方便学习和测试,所有的例子都是在Oracle自带用户Scott下建立的。 [sql] view plain copy print?create table EMP ( empno NUMBER(4) not null, ename VARCHAR2(10), job VARCHAR2(9), mgr ...原创 2018-08-14 12:30:14 · 962 阅读 · 0 评论