“ORA-06550: 第 1 行, 第 7 列”解决方法

将本机能正常运行的维修生产日志代码发布到公司内测环境里无法正常运行,报错如下:

execute() - pls–QuartzJob.java–quartzjob 开始执行!

java.sql.SQLException: ORA-06550: 第 1 行, 第 7 列:

PLS-00201: identifier ‘MONITORCHANGEPLS.MCP_ISCHANGE’ must be declared

ORA-06550: 第 1 行, 第 7 列:

PL/SQL: Statement ignored

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)

at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331)

at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:288)

at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:743)

at oracle.jdbc.driver.T4CCallableStatement.doOall8(T4CCallableStatement.java:215)

at oracle.jdbc.driver.T4CCallableStatement.executeForRows(T4CCallableStatement.java:954)

at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1168)

at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3285)

at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:3329)

at com.szair.smartme.productlogsys.dao.LogEditDao85.doInHibernate(LogEditDao.java:3310)atorg.springframework.orm.hibernate3.HibernateTemplate.doExecute(HibernateTemplate.java:406)atorg.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:339)atcom.szair.smartme.productlogsys.dao.LogEditDao.getChangeValue(LogEditDao.java:3288)atcom.szair.smartme.productlogsys.dao.LogEditDao85.doInHibernate(LogEditDao.java:3310)atorg.springframework.orm.hibernate3.HibernateTemplate.doExecute(HibernateTemplate.java:406)atorg.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:339)atcom.szair.smartme.productlogsys.dao.LogEditDao.getChangeValue(LogEditDao.java:3288)atcom.szair.smartme.productlogsys.dao.LogEditDaoFastClassByCGLIBFastClassByCGLIBec6980fb.invoke()atnet.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:191)atorg.springframework.aop.framework.Cglib2AopProxyec6980fb.invoke()atnet.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:191)atorg.springframework.aop.framework.Cglib2AopProxyCglibMethodInvocation.invokeJoinpoint(Cglib2AopProxy.java:689)

at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)

at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:107)

at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)

at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:90)

at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)

at org.springframework.aop.framework.Cglib2AopProxyDynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:622)atcom.szair.smartme.productlogsys.dao.LogEditDaoDynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:622)atcom.szair.smartme.productlogsys.dao.LogEditDaoEnhancerByCGLIBEnhancerByCGLIBe33f2ad0.getChangeValue()atcom.szair.smartme.productlogsys.service.LogeditServer.getChangeValue(LogeditServer.java:1224)atcom.szair.smartme.productlogsys.service.LogeditServere33f2ad0.getChangeValue()atcom.szair.smartme.productlogsys.service.LogeditServer.getChangeValue(LogeditServer.java:1224)atcom.szair.smartme.productlogsys.service.LogeditServerFastClassByCGLIBFastClassByCGLIBa3f1c07d.invoke()atnet.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:191)atorg.springframework.aop.framework.Cglib2AopProxya3f1c07d.invoke()atnet.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:191)atorg.springframework.aop.framework.Cglib2AopProxyCglibMethodInvocation.invokeJoinpoint(Cglib2AopProxy.java:689)

at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)

at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:107)

at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)

at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:90)

at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)

at org.springframework.aop.framework.Cglib2AopProxyDynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:622)atcom.szair.smartme.productlogsys.service.LogeditServerDynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:622)atcom.szair.smartme.productlogsys.service.LogeditServerEnhancerByCGLIBEnhancerByCGLIBf4a0e4fa.getChangeValue()atcom.szair.smartme.productlogsys.service.QuartzJob.execute(QuartzJob.java:60)atcom.szair.smartme.productlogsys.service.QuartzJobf4a0e4fa.getChangeValue()atcom.szair.smartme.productlogsys.service.QuartzJob.execute(QuartzJob.java:60)atcom.szair.smartme.productlogsys.service.QuartzJobFastClassByCGLIBFastClassByCGLIB29dcb96e.invoke()atnet.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:191)atorg.springframework.aop.framework.Cglib2AopProxy29dcb96e.invoke()atnet.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:191)atorg.springframework.aop.framework.Cglib2AopProxyCglibMethodInvocation.invokeJoinpoint(Cglib2AopProxy.java:689)

at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)

at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:107)

at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)

at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:90)

at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)

at org.springframework.aop.framework.Cglib2AopProxyDynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:622)atcom.szair.smartme.productlogsys.service.QuartzJobDynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:622)atcom.szair.smartme.productlogsys.service.QuartzJobEnhancerByCGLIBEnhancerByCGLIBc475e8c1.execute()atsun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethod)atsun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)atsun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)atjava.lang.reflect.Method.invoke(Method.java:606)atorg.springframework.util.MethodInvoker.invoke(MethodInvoker.java:273)atorg.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBeanc475e8c1.execute()atsun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethod)atsun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)atsun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)atjava.lang.reflect.Method.invoke(Method.java:606)atorg.springframework.util.MethodInvoker.invoke(MethodInvoker.java:273)atorg.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBeanMethodInvokingJob.executeInternal(MethodInvokingJobDetailFactoryBean.java:311)

at org.springframework.scheduling.quartz.QuartzJobBean.execute(QuartzJobBean.java:113)

at org.quartz.core.JobRunShell.run(JobRunShell.java:202)

at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:529)

execute() - pls–QuartzJob.java–execute() - 没有更新的数据!

在网上查询资料,有用的建议如下:

1 ,

http://www.th7.cn/program/java/201510/620030.shtml

我自己在做 Oracle 存储过程 结果集 练习时碰到的问题!

我开始是plsql developer 工具建立的存储空间,但是查看属性是 owner 是 sys

但是在java代码中确显示以上错误。

原因是 权限问题 。

解决方法 :把上面这个 存储过程 删掉;然后打开Oracle 自带的 sql plus (用java代码中调用都用户名登陆Oracle 不是sys)把建立存储过程的代码直接粘贴过去,这样你在 执行java代码就OK了!

2,

http://bbs.csdn.net/topics/390100723

2.1 因为包的拥有者和你程序中连接数据库的用户不一。 比如包的拥有者用户为m ,而你程序连接数据库的用户为t.

这样的话t用户是访问不了 m 用户下的包。 需要创建同义词,赋予执行权限.

2.2 我遇到过,是因为数据表与包建立在sysdba权限状态下,所以普通权限访问不了,希望能帮到你

之后我就将oracle数据库中原本我自己新建的那个包及下面的存储过程删除,准备重新新建一个,就在这个过程中,本地程序一直在跑,在删除包还没新建之前,控制台报错:

execute() - pls–QuartzJob.java–quartzjob 开始执行!

java.sql.SQLException: ORA-06550: 第 1 行, 第 7 列:

PLS-00201: identifier ‘MONITORCHANGEPLS.MCP_ISCHANGE’ must be declared

ORA-06550: 第 1 行, 第 7 列:

PL/SQL: Statement ignored

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)

at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331)

at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:288)

at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:743)

at oracle.jdbc.driver.T4CCallableStatement.doOall8(T4CCallableStatement.java:215)

at oracle.jdbc.driver.T4CCallableStatement.executeForRows(T4CCallableStatement.java:954)

at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1168)

at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3285)

at oracle.jdbc.driver.OraclePreparedStatement.__xr__14__executeQuery(OraclePreparedStatement.java:3329)

at sun.reflect.GeneratedMethodAccessor91.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.__invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

at java.lang.reflect.Method.invoke(Unknown Source)

at com.zeroturnaround.xrebel.runtime.oracle.jdbc.driver.OraclePreparedStatementinv14____xr__14__executeQuery.invoke(OraclePreparedStatementinv14____xr__14__executeQuery.invoke(OraclePreparedStatementinv14____xr__14__executeQuery.java)

at com.zeroturnaround.xrebel.analyzer.XRPreparedStatementSpy.invoke(XRebel:43)

at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java)

at com.szair.smartme.productlogsys.dao.LogEditDao85.doInHibernate(LogEditDao.java:3310)atorg.springframework.orm.hibernate3.HibernateTemplate.doExecute(HibernateTemplate.java:406)atorg.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:339)atcom.szair.smartme.productlogsys.dao.LogEditDao.getChangeValue(LogEditDao.java:3288)atcom.szair.smartme.productlogsys.dao.LogEditDao85.doInHibernate(LogEditDao.java:3310)atorg.springframework.orm.hibernate3.HibernateTemplate.doExecute(HibernateTemplate.java:406)atorg.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:339)atcom.szair.smartme.productlogsys.dao.LogEditDao.getChangeValue(LogEditDao.java:3288)atcom.szair.smartme.productlogsys.dao.LogEditDaoFastClassByCGLIBFastClassByCGLIBec6980fb.invoke()atnet.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)atorg.springframework.aop.framework.Cglib2AopProxyec6980fb.invoke()atnet.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)atorg.springframework.aop.framework.Cglib2AopProxyCglibMethodInvocation.invokeJoinpoint(Cglib2AopProxy.java:692)

at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)

at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:107)

at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)

at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)

at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)

at org.springframework.aop.framework.Cglib2AopProxyDynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:625)atcom.szair.smartme.productlogsys.dao.LogEditDaoDynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:625)atcom.szair.smartme.productlogsys.dao.LogEditDaoEnhancerByCGLIBEnhancerByCGLIB7c34ab1d.getChangeValue()atcom.szair.smartme.productlogsys.service.LogeditServer.getChangeValue(LogeditServer.java:1224)atcom.szair.smartme.productlogsys.service.LogeditServer7c34ab1d.getChangeValue()atcom.szair.smartme.productlogsys.service.LogeditServer.getChangeValue(LogeditServer.java:1224)atcom.szair.smartme.productlogsys.service.LogeditServerFastClassByCGLIBFastClassByCGLIBa3f1c07d.invoke()atnet.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)atorg.springframework.aop.framework.Cglib2AopProxya3f1c07d.invoke()atnet.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)atorg.springframework.aop.framework.Cglib2AopProxyCglibMethodInvocation.invokeJoinpoint(Cglib2AopProxy.java:692)

at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)

at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:107)

at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)

at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)

at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)

at org.springframework.aop.framework.Cglib2AopProxyDynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:625)atcom.szair.smartme.productlogsys.service.LogeditServerDynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:625)atcom.szair.smartme.productlogsys.service.LogeditServerEnhancerByCGLIBEnhancerByCGLIB4258661f.getChangeValue()atcom.szair.smartme.productlogsys.service.QuartzJob.execute(QuartzJob.java:60)atcom.szair.smartme.productlogsys.service.QuartzJob4258661f.getChangeValue()atcom.szair.smartme.productlogsys.service.QuartzJob.execute(QuartzJob.java:60)atcom.szair.smartme.productlogsys.service.QuartzJobFastClassByCGLIBFastClassByCGLIB29dcb96e.invoke()atnet.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)atorg.springframework.aop.framework.Cglib2AopProxy29dcb96e.invoke()atnet.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)atorg.springframework.aop.framework.Cglib2AopProxyCglibMethodInvocation.invokeJoinpoint(Cglib2AopProxy.java:692)

at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)

at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:107)

at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)

at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)

at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)

at org.springframework.aop.framework.Cglib2AopProxyDynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:625)atcom.szair.smartme.productlogsys.service.QuartzJobDynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:625)atcom.szair.smartme.productlogsys.service.QuartzJobEnhancerByCGLIBEnhancerByCGLIB41170d0.execute()

at sun.reflect.GeneratedMethodAccessor123.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.__invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

at java.lang.reflect.Method.invoke(Unknown Source)

at org.springframework.util.MethodInvoker.invoke(MethodInvoker.java:273)

at org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean41170d0.execute()    at sun.reflect.GeneratedMethodAccessor123.invoke(Unknown Source)    at sun.reflect.DelegatingMethodAccessorImpl.__invoke(Unknown Source)    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)    at java.lang.reflect.Method.invoke(Unknown Source)    at org.springframework.util.MethodInvoker.invoke(MethodInvoker.java:273)    at org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBeanMethodInvokingJob.executeInternal(MethodInvokingJobDetailFactoryBean.java:264)

at org.springframework.scheduling.quartz.QuartzJobBean.execute(QuartzJobBean.java:86)

at org.quartz.core.JobRunShell.run(JobRunShell.java:202)

at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:529)

execute() - pls–QuartzJob.java–execute() - 没有更新的数据!

对比可以发现,两者报的错几乎是一样,说明测试环境里报错就是因为无法访问到数据库里的包及下面的存储过程。

最后经检查,发现测试环境里的datasource设置的用户名和本机不一致,所以才访问不到其他账号建立的存储过程。本机配置是前几天才从测试库上down下来的,谁知道没几天就被别人改了,而且还没被告知,以后需小心。

原文地址:https://www.cnblogs.com/jxldjsn/p/9090757.html

时间: 2024-08-11 10:14:46

“ORA-06550: 第 1 行, 第 7 列”解决方法的相关文章

Oracle 多行变一列的方法

多行变一列的方法有很多,觉得这个第一眼看懂了当时就用的这个办法. 情况是这样的.以下数据前几列是一样的,需要把VAT_VALUE_CHAR 的值放在同一行上. SELECT * FROM ps_vat_defaults defaults WHERE defaults.vat_driver = 'VAT_ENT_RGSTRN' AND defaults.vat_driver_key1 = 'AMB19' AND defaults.vat_driver_key2 = 'DEU' AND vat_de

QWebView崩溃 “Qt5WebKitd.dll!WTFCrash() 行 345 C++” 的解决方法

今天使用 QWebView 来做个简易的浏览器,出现了几个崩溃的问题,我的 Qt 版本是最新的5.4.2,相信 5.3.2 或者更低版本也会出现这些问题. 问题重现: 1.QWebView::load(URL),当界面还没加载完的时候,双击此控件会出现崩溃: 2.当 load()  过程中,界面出现垂直滚动条而又未完全加载完成的时间,使用鼠标滑轮或者直接拖动滚动条至最顶或者最底时出现崩溃(有些页面出现). 崩溃的堆栈如下: Qt5WebKitd.dll!WTFCrash() 行 345 C++

处理文件夹shift+鼠标右键出现的是powershell而不是命令行的问题的解决方法

如题,有时候安装一些工具的时候会需要在工具解压目录下打开命令提示符窗口键入一些固定的指令来完成安装,然后win10系统在常规的shift+鼠标右键打开的都时候发现没有命令提示符窗口,反而出现了一个powershell,然后又不想win+R打开运行输入CMD 然后通过命令切换到目标文件夹.在这个情况下可以选择如下步骤: 0x00: win+R打开运行输入regedit回车打开注册表编辑器. 0x01: 注册表路径 计算机\HKEY_CLASSES_ROOT\Directory\Background

Ubuntu命令行中文乱码的解决方法

修改/etc/dafault/locale: 修改默认的        LANG=zh_CN.UTF-8        LANGUAGE=zh_CN:zh 为:        LANG="en_US.UTF-8"        LANGUAGE="en_US:en" 存盘退出 然后: sudo reboot 再然后 env 或者 locale 查看修改后的结果 就可以了...

解决Python 字典写入文件出行首行有空格的解决方法

模拟购物车程序,判断用户薪资是否是0 如果是0就需要输入薪资,并记录到文件内. 可以预先存个字典格式的字符串,然后去读取文件的时候读到的是字字符串然后再去用eval去转换成字典. 当我们覆盖写到文件的时候就会发现首行会有空格,当我们再去读取eval的时候就会报错,那怎么样可以解决这个问题呢! import json info = { 'lisi':0, 'zhangshan':100, } f = open('json.txt','w') f.write(json.dumps(info)) {"

div css每行文字显示一半 同时文字字体重叠显示不全解决方法

CSS DIV布局中出现单行或多行文字的每行文字内容不能显示全,上下行文字有一点点重叠现象,文字字体只显示一半解决方法,在低版本IE特别明显文字字体显示不全,在谷歌浏览器等高版本IE浏览器测试还好些. 新手布局时候特别爱出现DIV盒子里文字字体显示不完整,音乐沙发甚至上下行文字有一点重叠现象. css字体文字重叠显示不完整重叠字体字体文字重叠显示不完整同时有重叠重合效果截图 在DIV+CSS布局中造成这种字体显示不全,音乐沙发显示一半同时多行文字有一点点重叠情况原因:css行高小于CSS字体大小

第一课 矩阵的行图像与列图像(麻省理工公开课:线性代数)【转载】

转载自:http://blog.csdn.net/a352611/article/details/48602207 仅用于个人笔记. 目录(?)[-] 从方程组到矩阵 row picture 行图像 column picture 列图像 本系列笔记为方便日后自己查阅而写,更多的是个人见解,也算一种学习的复习与总结,望善始善终吧~ 1. 从方程组到矩阵  矩阵的诞生是为了用一种简洁的方式表达线性方程组 个人理解来说就是为了更好的描述和解决 Ax = b 从系统的角度来理解: A 就是我们的系统 x

行存储和列存储

传统的行式数据库将一个个完整的数据行存储在数据页中.这种方式在大数据量查询的时候会出现以下问题 1.在没有索引的情况下,会把一行全部查出来,查询会使用大量IO 2.虽然建立索引和物化视图可以可以快速定位列,但是也需要花费大量时间 但是如果处理查询时需要用到大部分的数据列,这种方式在磁盘IO上是比较高效的. 一般来说,OLTP(Online Transaction Processing,联机事务处理)应用适合采用这种方式. 一个OLAP类型的查询可能需要访问几百万甚至几十亿个数据行,且该查询往往只

Oracle 多行转多列

Oracle 多行转多列,列值转为列名 前段时间做调查问卷,客户创建自定义问卷内容,包括题目和选项内容; 之后需要到处问卷明细,,,,麻烦来咯 于是到网上到处搜索,没有直接结果;于是又找各种相似的,,终于功夫不负有心人 然后最终自己写出来了,decode才是核心 废话不多说,看图 需求示例图表: 存储过程,嘿嘿: 1 create or replace procedure NAG_QUESTIONERSULT_EXP( 2 V_QID in number, 3 C_Title out sys_r