sql语句无效列类型,请教问题在哪?

ZSSZ_IT 2018-01-17 10:55:04
String sql="insert into text (id,name,zt,year) values(?,?,?,?)";
jdbcTamplate.update(sql,id,name,'1',year); 这句执行出错,无效列类型
以上几个属性都是varchar

Oracle执行
String sql="insert into text (id,name,zt,year) values(‘111’,‘name’,‘1’,year)";
没问题

最后用的
String sql="insert into text (id,name,zt,year) values(‘ “+id+” ’,' "+name+" ','1','2018')";
jdbcTamplate.update(sql);
执行没问题

感觉很奇怪,请大神解答
...全文
2160 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
亲爱的Joe 2018-02-25
  • 打赏
  • 举报
回复
你拼的那个语句不对。 应该都是单引号才可以。 7楼的图很明显了。sql语句成了两个字符串加一个变量。而且还包含着中文的双引号
godvi_csdn 2018-02-24
  • 打赏
  • 举报
回复
‘ “+id+” ’ 我感觉 引号怎么像是中文的引号呢???
vswen5 2018-01-26
  • 打赏
  • 举报
回复
你将参数放在一个数组里试试 JdbcTemplate().update(String sql,Object[] o)
渣渣辉 2018-01-26
  • 打赏
  • 举报
回复
培训的吧,
渣渣辉 2018-01-26
  • 打赏
  • 举报
回复
你那个引号是什么操作
PYJJ 2018-01-25
  • 打赏
  • 举报
回复
add或者insert吧
  • 打赏
  • 举报
回复

原因很清楚了
墨笙弘一 2018-01-22
  • 打赏
  • 举报
回复
把具体的错误贴出来 无效的列类型 数据类型对不上吧
木子0204 2018-01-22
  • 打赏
  • 举报
回复
引用 1 楼 lelinghong 的回复:
jdbcTamplate.update(sql,id,name,'1',year); 里面这个 单引号是不是有问题?Java里面字符串是双引号吧?
是不是这个问题呢
喜氏天狼 2018-01-18
  • 打赏
  • 举报
回复
是啊,是不是JAVA把‘1’当作char类型了。
乐快乐 2018-01-17
  • 打赏
  • 举报
回复
jdbcTamplate.update(sql,id,name,'1',year); 里面这个 单引号是不是有问题?Java里面字符串是双引号吧?
  • 打赏
  • 举报
回复
引用 1 楼 lelinghong 的回复:
jdbcTamplate.update(sql,id,name,'1',year); 里面这个 单引号是不是有问题?Java里面字符串是双引号吧?
这应该是个char行,。。。。换成“1”试试

81,091

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧