java的sql复制在数据库里能执行,但是运行还是报错啊 5C

图片说明
这个sql在数据库是能执行的但是还是报错

13个回答

mapper文件对应的javabean属性与字段copy_flag不一样

检查copy_flag字段

请仔细检查映射的实体类和数据库的字段名是否一致

检查被搜索的位置会否含有该字段,你可以分段进行select来查看问题出在哪里

SELECT * FROM (SELECT CAST(ROUND(a.reding_value,0) AS INT )reading_value,a.hdatetime_new,CAST(ROUND(a.lastcopy_value,)

请注意 mapper文件中的大小写格式, 你应该直接复制 eclipse 控制台输出的语句去你的DB工具查询. 在反馈一下进度.

DB的配置是会区分大小写的.

你把数据库运行的sql语句和这个报错的sql语句都贴出来对比一下,看看是什么问题

检查数据库表里是否存在该字段名,java定义的属性bean,注意设置getset方法

结尾多了分号或者sql里有>等需要转义字符,还有in等

把数据库运行的sql语句和这个报错的sql语句都贴出来对比一下

检查你bean的映射对不对就可以了

共13条数据 1 尾页
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
为什么在mysql数据库可以运行的SQL语句,在java里却报错!!

一,解决方法 为尽快解决问题, 其他代码省略,直接说明解决发String sql = "select * from tablename"; //引发java虚拟机报错却在数据库正确运行;为得到正确结果改为:String sql = "select * from tablename "; //可以正常运行两句一样吗,请仔细看哦? NO,可以正确运行的sql的tablename 和 ”

mybaits让人抓狂的错误!明明sql语句在navicat中执行没问题,但就是不能映射pojo实体类!

今天在做一个系统时,调试发现个奇怪的问题:sql语句在navicat中执行能返回正确的记录条目,并且各个字段的值能非常正常的显示出来,但是将sql放到mybatis的.xml文件中实际运行时,总有些字段不能正常映射。我的映射方式选择的是如下所示:

在mybatis中运行的sql文件报错,但是在PL/SQL上运行没有问题的解决方法!

把srpingboot  中配置数据库连接的配置文件更改一下   如果是mysql的就改为mysql,是Oracle的就改为Oracle!  

ora-00911: 无效字符 数据库可以执行

ora-00911: 无效字符 数据库可以执行JdbcTemplate 执行query时报错 但是该语句在数据库可以正确执行.经查 去掉sql语句末尾的 分号  ; 问题解决

同一sql程序执行比数据库执行慢

最近项目发现同一个sql在java端执行比在数据库执行慢很多,原因可能是程序的sql参数类型与数据库字段的类型不一致。

sql 在sqlplus下能正确执行,但是hibernate 原生sql执行报列名无效错误

这是我原来的sql: String sql="select s.* from(select t.*,rownum n from (select id,msg_Title,msg_Sdate from Sys_Msg where status=? and msg_sdatesysdate order by sort_Num,msg_Sdate desc) t) s where s.n in (:n

thinkphp为什么SQL语句执行了还要报错

query 执行SQL查询操作 $Model = M() $Model->query("select * from think_user where status=1"); 如果数据非法或者查询错误则返回false 否则返回查询结果数据集(同select方法) 你用插入语句 返回的不是数组 所以就报错了吧 execute用于更新和写入数据的sql操作 $Model = M()

mybatis执行sql检索不到数据,在数据库能成功检索到

在开发中遇到了这个问题,进行检索的时候,mybatis检索返回结果为空,但是把打印的sql放在数据库里执行能检索到数据,百度了才发现,是连接数据库的时候没有设置字符编码 在jdbc.properties中,url后面加上?autoReconnect=true&useUnicode=true&characterEncoding=utf8 driver=com.mysql.jdbc.Driver

sql语句在客户端执行完好,在java后台中执行报异常

执行sql语句返回yntax error: syntax error, expect LPAREN, actual NOT not可是我把sql语句在sql客户端执行是Ok的后来在一个博客的评论区找到了原因原来改sql语句执行被druid配置的防火墙拦截了将druid.filters属性中的wall去掉就好druid 参数详见 http://blog.csdn.net/hj7jay/article

C++ SQL语句 执行失败

昨天发麻将版本出现一个问题就是用C++代码构造的SQL语句;测试的时候发现有时候能执行成功,有时候执行不成功,断点调试的时候在那个地方断不了点,怀疑是前面是有中午注释字符编码的问题导致的,于是附近的地方的上下文的中午注释都去掉,发现还是断不了点,于是尝试把整个cpp文件都统一转成utf8格式编码,这时候再编译运行的时候发现SQL语句都能够执行成功了,郁闷啊,怎么可以这样,怎么可以这样,    

奇怪!同一条sql语句在数据库和代码中执行结果不同?!当然是人错了 ……

sql语句就是它:      select count(1) from syscolumns where [id]=object_id( 'tablecommon' )       判断数据库中是否存在表tablecommon,本想让在数据库中查到的值返回到程序里,值却总不是想要的:     程序里返回 -1     sql里返回大于0的值(意为存在该表)

存储过程执行成功,就是修改不了数据

1:先看看数据库的emp表的数据类型 2:错误的姿势 3:正确的姿势 4:总结-解决问题的过程

sql语句没问题,在数据库运行ok ,也查出了数据,但就是显示的时候报空指针异常..

为什么呢 ? 在网上搜索,说是我获取的Session有问题,我去看了下 ,也没问题,是ok的 于是我猜想,可能是我的全局配置出了问题,哎呀我勒个去,我一看就看到了问题的关键,原来我关闭了自动映射匹配机制,然后我开启了他 ,问题解决,荣获java 福斯特布拉德 问题就在这句上

mybatis执行查询语句,可以在plsql中查询数据,但是在程序中查询不到

今天用mybatis查询语句的时候,控制台输出的sql语句可以在plsql里面可以正确执行,但是查询出来就是没有数据。   原查询语句如下:(为了保密性,将敏感的包名给马赛克了。)   此sql可以在plsql中正确执行,但是查询不到数据。 解决办法是:将查询条件中的“#”替换成“$”. 原因如下:MyBatis看到 #{}会认为你在给sql中的变量赋值,就像JDBC编程中给问号赋值一

在数据库中sql查询很快,但在程序中查询较慢的解决方法

在写c#WS的时候,有一个方法查询速度比其他方法慢很多,但在数据库查询很快,原来是因为程序中使用参数化查询时参数类型错误的原因 代码如下              string sql = "SELECT * FROM LIS_V_LABTESTSAMPLE WHERE PATIENT_ID=:P";             HlsAccess.CommandText = sql;    

mybatis 批量更新操作 mysql语句正常 执行却报错

最近写的比较多 批量的增加 与 更新 一直觉得mybatis 能够支持 我的sql 那么应该也能够完美操作数据库,结果报错,反复看mysql语句 没错啊 断点看接口传入的值 也没错啊 想不通 然后 无奈 百度 好吧!!! 果然是个坑 然后果断加上了&allowMultiQueries=true 加在哪里? 加在mysql链接上 eg: jdbc:mysql://127...

SQL 客户端执行快 java执行慢 ibatis

本人使用SpringMVC架构+ibatis

oracle数据库加ssm框架出现SQL语句数据库可以查到数据,项目中查不到的问题

oracle数据库加ssm框架出现SQL语句数据库可以查到数据,但项目中查不到数据的问题 个人错误是因为在oracle数据库中录入完数据之后没有提交

java中sql查询条件为中文时,rs.next为false,查询不到结果的解决办法

经过查找资料,发现这是字符集编码问题,我们只需要按下面设置代码就可以了: String url = "jdbc:mysql://localhost:3306/dictionary?useUnicode=true&characterEncoding=gb2312"; 注意红色部分

同样的sql语句在数据库中能查出结果,但是在java项目中,查不出来

1.查看jdbc.properties url链接是否指定了数据编码格式 url = jdbc:mysql://xx.x.xx.xxx:3306?useUnicode=true&characterEncoding=utf8 2.如果jdbc.properties已经设置还是出现该错,则查看数据库连接配置xml文件,在jdbcUrl中也设置数据编码格式

用mybatis在java后台insert数据,能运行但数据库没有添加成功

用mybatis在java后台insert数据,能运行但数据库没有添加成功。 如图所示,没有报错,但是在数据库中却没有成功添加该条数据 结果是因为没有提交导致,正确代码如下: 添加:         sqlSession.commit();         sqlSession.close(); 问题解决!

排序应该在数据库还是在应用程序中进行?

在网站开发中,究竟是在数据库(DB)中排序好,还是在应用程序中排序更优,这一直是个很有趣的话题。DBANotes.net博主,在数据库方面比较有研究的冯大辉就这一问题日前和读者明灵(Dragon)做了探讨,本文是关于该问题的总结。 问:请列出在PHP中执行排序要优于在MySQL中排序的原因? 答:通常来说,执行效率需要考虑CPU、内存和硬盘等的负载情况,假定MySQL服务器和PHP的服务器都已

mybatis执行查询语句查询不到结果,控制台输出sql语句复制到数据库中能查到数据

解决方案1: 是不是在代码中的一些特殊字符问题,比如:将查询条件中的“#”替换成“$”. 解决方案2: 打个断点看看执行到了哪里 解决方案3: 1--程序中的用户和schema是否设置正确        2--你使用的DAO是不是连接的这个数据库,检查一下sqlMapConfig        3--输出sql语句复制到数据库中肯定填入参数了,你看看你设置的参数有什么不一

Mybatis异常-SQL执行没反应,但oracle单独执行正常

运行环境SpringBoot表现结果1、有的SQL能够执行,有的SQL不行,运行也不报错,但就是执行后没有效果。 2、但SQL单独再oracle中是执行成功的。SQL片段<select id="checkDaohangProcessedStatusByRefid" parameterType="Map" resultType="java.lang.Integer"> SELECT

数据库查出来的数据到JAVA中就错了?不可能!

这两天碰到一个让我欲哭无泪的问题! 框架用的springMvc+mybatis 问题描述  List  list = service.select(param). ‘相同’的sql语句查出来的结果在mysql中和eclipse中不同 需求:连接了三张表,查询结果按不同的条件来排序 方案:mapper中的sql语句是这样的       select * from () order

.NET 数据库存储过程执行快,程序调用存储过程执行慢

.NET MVC+EF框架 问题描述:开发了一个功能,因数据关联比较复杂,所以写了存储过程。                     查询1万多条数据:在数据库直接执行存储过程耗时2秒,在测试系统运行,也是3、5秒就显示结果了。                     发布到正式系统,发现运行非常非常慢(5分钟)。 解决办法:重新编译正式系统的存储过程 结        果:运行速度回复

sql sql语句的执行原理

第一步:客户端把语句发给服务器端执行:   在客户端连接上服务器后,在客户端与服务器端都会形成一个进程,客户端上的我们叫做客户端进程;而服务器上的我们叫做服务器进程。所有的SQL语句都是在客户端进程产生的,在服务器进程执行的。 第二步:语句解析:   当客户端把SQL语句传送到服务器后,服务器进程会对该语句进行解析(在服务器上进行)。此时服务器进程会对于SQL语句进行以下操作: 1、  查

同一条SQL在不同的数据库中执行,有一个会报错.

今天碰到一个很蛋疼的问题,同一条SQL测试环境OK, 线上环境总报错, 找了半天, 也请教了好几个同事都没找出来. 很是费解.两个环境唯一不同的就是 版本,线上是5.6,测试环境是5.1 报错如下: () 后来一位大神给解决了,说是起的表别名没加``. 但是我记得起别名不需要必须加引号,具体原因大神也不知道,说是加上最好~~(皮皮虾,我们回来) 下面是加上引号之后的结果:

Thinkphp中用sql语句插入数据时,虽然成功插入但是报错

在ThinkPHP的query函数想数据库中插入函数的时候如下面的代码 public function GetToMysql($user,$password,$emile){ $password = $this->encryptPwd($password); $query = "insert into user (username,password,email)

delete语句执行不下去,删除不了数据,解决方法

通过v$locked_object 和 v$session查看下你不能删除数据的表是否被其它session锁住了 如果锁住了,你肯定就不能删除,只能等待那个session事务提交或回滚你才能做 找到那个sid,然后kill掉  --首先查看有哪些锁: select /*+ rule */ s.username, decode(l.type,'TM','TABLE LOCK',

执行mybatis数据库中存放的SQL

项目中看到的一段比较神奇的思路,将SQL语句存放在了数据库中,通过外键KEY_ID来获取制作一个合同需要用到的所有SQL,并依次循环执行 贴在此处,过几天深入了解一下。 /**      * 根据传入的策略名(通常是文件名,会被大写处理),读取待填充数据      *      * @param key      * @param params      *          

使用事务,程序中sql语句都执行了,但是数据库没有变化。

       刚刚工作不久,基础不是特别扎实,解决问题的能力还可以,直接上手项目,做的过程中学的了非常多东西。        题目是最近遇到的一个小问题,虽然小但是不好找原因,为了同样遇到问题的人方便,直接说明可能的原因之一,就是使用了事务,而在sql语句执行之后,没有让事务提交。如果你遇到了同样的问题,那么在执行数据库语句后面写上提交事务的语句再执行一次试试,成功的话那么恭喜(另外不是所有的情...

java操作快,还是数据库操作快;比如某个查询,我是通过数据库直接返回快,还是java进行数据处理快?

java操作快,还是数据库操作快;比如某个查询,我是通过数据库直接返回快,还是java进行数据处理快? 场景: 我需要查询关联查询两个表的数据(user,organ),我需要查询某个用户所在的机构名字,怎么实现? 1、数据库查询一次返回 select  t.* from user u,organ o where u.organId=o.id and u.id=? 2、先单表查询user,...

一种奇怪的错误,执行一个junit测试用例,代码却执行了很多遍

最近用junit做接口测试的时候,项目框架是ssm,只执行了一次测试用例,但是service实现层根据日志,发现执行了几十次到上百次,直到栈溢出才会停止。这是测试用例: @Test public void testGetTest() { try { CloseableHttpClient closeableHttpClient = HttpCli

解决问题:Oracle存储过程执行成功,但数据没有变化

  Oracle存储过程执行成功,但数据没有化一. 检查执行之后,是否在后面加写一行commit;二. 检查execute语句在where条件后面,操作的字段是否trim(),否则很有可能执行结果不成功;示例:红色下划线的地方特别注意:不管是传入的参数,还是表本身的字段都要加trim();  ...

同样的SQL语句在查询分析器执行很快,但是网站上执行超时的诡异问题

同样的SQL语句在查询分析器执行很快,但是网站上执行超时的诡异问题   使用DbParameter傳遞參數撈SQL Server資料速度異常的慢  http://adyhpq.blog.163.com/blog/static/3866700201062331034769/     c#Dbtype与SQL dbtype一一对应关系,提高效率关键 http://blog.csd

使用数据库排序or使用具体编程语言排序

原文地址:点击打开链接 问:请提供一些必须在MySQL中排序的实例? 答:在PHP中执行排序更优的情况举例如下: 数据源不在MySQL中,存在硬盘、内存或者来自网络的请求等;数据存在MySQL中,量不大,而且没有相应的索引,此时把数据取出来用PHP排序更快;数据源来自于多个MySQL服务器,此时从多个MySQL中取出数据,然后在PHP中排序更快;除了MySQL之外,存在其他数

代码提示插入成功,数据库没有数据,事务异常问题

项目整体理解不透彻。 项目中有这么需求,单一条记录插入出错之后,在错误日志里面添加一条记录,但是在测试的时候,错误日志怎么都没有插入,调试的时候发现在代码中执行没有报错,但是就是没有写入数据库。 开始怀疑表的问题,然后新建一个临时表,只插入一个字段依旧不能插入数据库,应该不是数据库问题,然后代码里面修改将插入语句改到别的xml中,还是不行,插入语句在命令行可以执行,各种无头无脑的尝试之后,定位到

php 脚本不报错的原因

场景 上线遇到问题,写了一个简单的脚本线下复现的时候,发现没有结果 而且运行到了特定的位置断掉。尝试error_reporting(E_ALL); 也不行 分析 1. 第一种可能性 集成环境一般是默认开始错误报告,但是linux软件安装包就不一定了 很显然我中招了 2. 第二种可能性 没有达到报错级别, 可以使用下面的函数设置0容忍模式 `er...

jeecg生成代码 数据库不存在表

需要dbconfig.properties与jeecg_database.properties配置文件设置连接数据库配置值都写成一样

解决存储过程执行快,但程序调用则执行慢的问题

这两天遇到一个问题令人比较郁闷,一个大概120行左右的存储过程在SQL Server2012的查询分析器里面执行, 速度非常理想,1秒不到,即可筛选抓取到大概500条数据记录。 但在C#程序代码里调用,就提示连接超时。把CommandTimeout设置为300,就要3分钟左右时间才能显示出来, 检查了几遍代码也没有发现错误。问题依旧。 原因分析: 1、由于在查询分析器里执行速度很快,

tp框架下。update SQL虽然会执行。但是会报错

1)在tp中执行sql语句,虽然实际是操作了数据表,但是页面会报错。如: update dj_star set is_delete=0 where id=1 原因是query和execute的区:1)query一般是用来查询操作(select) $sql=selete * from 表名 where 条件 M()->query()2)execute通常用来insert和u

sql脚本直接能执行但是以sql文件不能执行

sql正常,由txt转换为sql文件后,数据库执行报错,解决办法是将sql文件中数据取出放到新文件中,新文件保存时直接以sql格式保存

sqlserver 2005 那我用SQL创建表之后,为什么在所创建的数据库中找不到呢?

(这个没有试过,收藏只能下次遇到时参考)参考网上答案: 1,你的创建表这个操作是否在事物过程中?要是事物失败。100%会还原到原始状态。 2,可能你数据库对象没选择对。导致创建到别的库中了。 3,程序中创建的话,看一下是否提交了你的SQL文。 4,存储过程中创建的话,用Print最后打印一下你创建Sql的字符串是否完整和正确。 5, 可能创建了。你没有刷新。可以在查询分析器中写上 Se

java代码显示正确执行,但为何数据未成功插入数据库?原因如下

java代码显示正确执行,但为何数据未成功插入数据库?原因如下 insert into records (uid,ke) values ('"+data[i][0]+"','"+sum[i]+"')" 当我在java里写上面代码时候,一直没有存进去数据库,控制台也不报错,并且我在后面还输出一个成功的话语,导致很懵比。 这使得让我一直在网络上寻找。直到发现是事物没有提交设置se

关于数据库中的事务(transaction),程序员必须记住的三点

关于数据库中的事务(transaction),程序员必须记住的三点     1. 对于程序员来说,理解事务以及并发事务的概念非常重要。下面先通过银行的转帐业务以及演示案例帮助大家建立并深入理解事务。     以下这段代码模拟我们在银行要完成的转账业务。研读以下代码,判断哪些SQL语句必须看作一个逻辑单元,即这些语句要执行成功都得成功;若有一条语句不能成功执行,其他语句也不允许成

客户端直接执行存储过程正常但代码调用慢的问题

JAVA调用SQL后台存储过程时,有时突然就变得很慢,在后台直接执行存储过程没问题,但在前台调用存储过程时就是很慢,而且在前台调用成功后,再次调用还是一样的慢,但更新一下存储过程再调用就很快了。但这始终不能彻底解决问题,过段时间又会出来同样的问题。   解决办法: 简单方法一:在可能比较耗时的语句后面加上option(recompile)   方法二:新编译存储过程

明明jar包已经引入了,并且编译不报错,但是运行却还提示classnotfound,什么原因?

我在写cxf的客户端代码调用cxf接口的时候,编译不报错,但是运行这一句的时候的时候报错: Client client = clientFactory.createClient("http://XX.XX.XX.XX:8080/XX/XXService?wsdl"); 报错提示: Caused by: java.lang.ClassNotFoundException: com.sun.t

数据库存在表,但是后台报找不到表或视图,并且将sql复制到数据库之后没有问题

答:  1.  查看 common-web.properties  jdbc.username.a=mdmdbyq jdbc.password.a=mdmdbyq jdbc.username.b=phbdbyq jdbc.password.b=phbdbyq jdbc.username.c=mdmdbyq jdbc.password.c=mdmdbyq jdbc.usernam

JAVA那点儿事之查询SQL Sever结果集为空

错误描述: 在JAVA程序中查询SQL Sever时,有时会出现命名数据库中存在数据,但是查询解决为空,错误代码为: com.microsoft.sqlserver.jdbc.SQLServerException: 结果集没有当前行。 错误代码: 相关的表如下:

立即提问
相关内容推荐