A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 崔增阳 中级黑马   /  2013-5-28 19:51  /  1473 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 崔增阳 于 2013-5-29 13:57 编辑

package mysql;
import java.sql.*;
import java.io.*;
public class ClobTest {
public static void main(String[] args) throws Exception{
  create();
}
static void create()throws Exception{
  Connection conn = null;
  PreparedStatement ps = null;
  ResultSet rs = null;
  try {
   conn = JdbcUtils.getConnection();
   String sql="insert into clob_test(big_text)valus(?)";
   ps = conn.prepareStatement(sql);
   File file=new File("e:\\CRUD.java");
   Reader reader=new BufferedReader(new FileReader(file));
   ps.setCharacterStream(1, reader, (int)file.length());
   ps.executeUpdate();
   reader.close();
  } finally {
   JdbcUtils.free(rs, ps, conn);
  }
}
}




Exception in thread "main" com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'valus('package mysql;\r\n\r\nimport java.sql.Connection;\r\nimport java.sql.Resu' at line 1
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:411)
at com.mysql.jdbc.Util.getInstance(Util.java:386)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1054)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4120)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4052)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2503)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2664)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2815)
at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2155)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2458)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2375)
at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2359)
at mysql.ClobTest.create(ClobTest.java:22)
at mysql.ClobTest.main(ClobTest.java:9)

评分

参与人数 1技术分 +1 收起 理由
袁梦希 + 1 很给力!

查看全部评分

2 个回复

倒序浏览

Mysql 语法错误。

String sql="insert into clob_test(big_text)valus(?)"; 中的 valus 写错了,请改为values重新尝试。

MySQLSyntaxErrorException 此异常为Mysql语法错误异常。

回复 使用道具 举报
童鞋,你的PreparedStatement ps 没有创建,还有你sql语句的执行语法正确吗,你加上ps=conn.createStatrment();rs=ps.escuteQuery(sql)试一下!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马