
oracle
文章平均质量分 55
oracle的日常使用
会飞地太阳
Life begins at the end of your comfort zone
展开
-
Oracle基础小结
1. 数据库Oracle数据库是数据的屋里存储,包括数据文件ORA或者DBF、控制文件、联机日志、参数文件。其实Oracle数据库的概念和其他数据库不一样,这里的数据库是一个操作系统,只有一个库,可以看作是Oracle就只有一个大数据库。2.实例一个Oracle实例有一系列的后台进程和内存结构组成,一个数据库可以有n个实例3.用户用户是在实例下建立的,不同实例可以建相同名字的用户。此处我们可以这样理解:MySQL中每个项目我们会去创建不同的数据库,Oracle中我们会创建新的用户,.原创 2021-03-09 18:26:14 · 200 阅读 · 0 评论 -
oracle创建用户并授权
一、创建/删除用户打开cmd登录到ysytem以创建其他用户sqlplus /nologSQL> connect / as sysdba创建用户及设置密码create user username identified by password;create user 用户名 identified by 密码;如:create user user1 identified by 123456;修改用户alter user user1 identified原创 2021-02-24 18:27:58 · 13670 阅读 · 0 评论 -
java.sql.SQLSyntaxErrorException: ORA-00918: 未明确定义列
java.sql.SQLSyntaxErrorException: ORA-00918: 未明确定义列问题的根源是 SQL查询出来有两个或者多个相同的列,oracle mybatis 不知道要怎么映射,所以就报这个异常。。。逻辑要清晰,代码要明确哦!原创 2021-01-28 12:52:20 · 1288 阅读 · 2 评论 -
java.sql.SQLSyntaxErrorException: ORA-01745: 无效的主机/绑定变量名的解决
ORA-01745: 无效的主机/绑定变量名异常原因:mybatis中的mapping映射,SQL语句中忘记加逗号。解决办法:加上缺失的逗号在百度时,网上还有说导致这个错误的原因还有:1.在mybatis中的mapping映射,SQL语句中忘记加逗号,且逗号处有换行。2.当数据量过大时,清洁的SQL语句长度太长,同样会导致这个异常。1.IN子句中的LIST个数最长为1000,超过该数目将报错,这里可转用一个临时表来解决;2.CREATETRIGGER语句文本的字符...原创 2021-01-28 09:24:19 · 3617 阅读 · 0 评论 -
Oracle中case when的用法
最早接触case when是在行列转的时候,数据库中最难的就是各种的查询,此次的业务需要导出Excel,导出的内容包含了很多的字段,各种联合查询,还有需要计算、分组联合等。历经整整一下午终于以近两百行结束了这个业务。特记录对于case when的用法,欢迎各位朋友指正,不喜勿喷。首先case when有两种表达方式,见下图的详细解释。但是在使用中需要我们灵活嵌套公式哦。比如:表abc中记录了id,name,type。我们要根据type的类型统计出name的组合。我们便可以这样使用此公式:.原创 2021-01-26 16:11:31 · 2212 阅读 · 0 评论 -
Oracle中decode函数的用法解析
decode函数的两种形式1. decode(条件,值1,返回值1,值2,返回值2,... ,值n,返回值n,缺省值)该函数的含义如下:IF 条件=值1 THEN RETURN(返回值1)ELSIF 条件=值2 THEN RETURN(返回值2) ......ELSIF 条件=值n THEN RETURN(返回值n)ELSE RETURN(缺省值)END IF2.decode(字段或字段的运算,值1,值2,值3)这个函数运行的结原创 2021-01-23 10:46:35 · 984 阅读 · 1 评论 -
oracle查询近一个月的数据
之前有总结过oracle的日期查询,查询今日、昨日、某天、本周等的数据,博客地址:https://blog.youkuaiyun.com/duan196_118/article/details/110805679 但是每次的需求或多或少都有不同。把查询近一个月的数据单独写一个记录,方便查看。欢迎各位指正,望不吝赐教!!!1. 获取当前日期首先查询是以当前执行时间为基数的,oracle中获取当前日期:select sysdate from dual;注意:sysdate不是一个函数,所以后...原创 2021-01-14 16:02:47 · 10401 阅读 · 0 评论 -
解决oracle使用rownum排序分页排序字段不唯一导致分页错误
今天在调试项目时发现Oracle使用rownum排序分页时出现了数据错乱的问题,前后端分离开发由于结合前端的插件使用只能在控制台定位错位在哪,经过排查发现前台传值没有问题,就去后端排查,最终定位了问题的所在,经过一番百度问题得以解决,原来排序的字段的值有很多都是一样的,典型的order by字段值不唯一造成分页记录混乱。 解决办法:在排序的时候加一个值唯一的字段就可以了,最好是id。但是这样会造成效率的降低, 目前还没有找到最合适的解决办法,希望看到的朋友能过给...原创 2020-12-17 19:46:11 · 731 阅读 · 0 评论 -
oracle 中的nvl函数使用
NVL函数作用:判断某个值是否为空值,若不为空值则输出,若为空值,返回指定值。详细解释如下:1、nvl()函数的格式如下:NVL(expr1,expr2);2、含义是:如果oracle第一个参数为空那么显示第二个参数的值,如果第一个参数的值不为空,则显示第一个参数本来的值。3、例:select name,NVL(name,-1) from user;运行后,结果返回两列数值,若name为空,则返回-1,若name不为空值,则返回其自身。注意:使用nvl函数的前提是查询到的结果不为空,原创 2021-01-09 11:42:14 · 22395 阅读 · 5 评论 -
oracle常见错误及解决方案积累
在对接第三方数据时,连接数据库的工具报错Error - OCI_INVALID_HANDLE。上一刻正常执行的SQL也报了这个错误,经过一番百度,最终找到了解决办法。原创 2020-12-26 18:49:02 · 7469 阅读 · 0 评论 -
PLSQL以及oracle数据库客户端:instantclient百度网盘分享安装及使用
百度网盘下载链接PLSQL下载:链接:https://pan.baidu.com/s/163jl735m0ldklLka6_ouGg提取码:aujnoracle数据库客户端:instantclient 下载:链接:https://pan.baidu.com/s/1kp5e3fzYNoVCmsQuxmZ24Q提取码:6g88第一步:PLSQL的安装傻瓜式安装,下面这一步需要我们选择输入plsql永久注册码:Product Code:4t46t6vydkvsxekkvf3.原创 2020-12-25 13:09:57 · 3491 阅读 · 0 评论 -
oracle根据日期查询小结
在项目中,常常用到时间方面的查询,针对oracle中的做出一个小结,高手可以忽略,不喜勿喷。欢迎看到的朋友留言补充指正!!!1.查询今天数据:select count(*) from tb whereTO_CHAR(T_RKSJ,'YYYY-MM-DD')=TO_CHAR(SYSDATE,'YYYY-MM-DD');2. 查询昨天的数据select count(*) from tb where TO_CHAR(T_RKSJ,'YYYY-MM-DD')=TO_CHAR(SYSDATE-1,'.原创 2020-12-07 13:06:16 · 2921 阅读 · 0 评论 -
java.sql.SQLException: ORA-01461: 仅能绑定要插入 LONG 列的 LONG 值;ORACLE数据库异常解决办法
场景:在执行插入SQL语句时,由于有个字段存储的是json串报出java.sql.SQLException: ORA-01461: 仅能绑定要插入 LONG 列的 LONG 值 错误。oracle数据库中该字段为分析:这个异常是用户向数据库执行插入数据时,某条数据的某个字段值过长,如果是varchar2类型的,当长度超过2000,--4000(最大值)之间的时候,oracle会自动将该字段值转为long型的,然后,插入操作失败。解决办法是:将此字段的类型改为clob或者blob类型;但是将...原创 2020-12-08 15:41:03 · 3976 阅读 · 0 评论