Java Mysql连接-检查与Mysql服务器版本对应的手册
包com.example.dev1.controllerJava Mysql连接-检查与Mysql服务器版本对应的手册,java,mysql,logging,sql-update,Java,Mysql,Logging,Sql Update,包com.example.dev1.controller import java.io.BufferedReader; import java.io.FileReader; import java.io.IOException; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; /*import java.sql.ResultSet;*/ import jav
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
/*import java.sql.ResultSet;*/
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import javax.swing.JApplet;
public class ReadLg extends JApplet {
private static final long serialVersionUID = 1L;
public static void main(String[] args) throws ClassNotFoundException, SQLException {
String[] lev_param = {"DEBUG", "WARN", "INFO", "ERROR"};
PreparedStatement ps = null;
Connection con = null;
/* ResultSet rs = null; */
try {
BufferedReader br = new BufferedReader(new FileReader("All.log"));
String username = "*****";
String pwd = "*****";
String connurl = "jdbc:mysql://ipaddress:3306/d_accesslog?useUnicode=true&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC";
con = DriverManager.getConnection(connurl, username, pwd);
String line = null;
while ((line = br.readLine()) != null) {
System.out.println(line + "\t");
String sql = "INSERT INTO t_weblogic_test (RawData) values ('"+line+"')";
ps = con.prepareStatement(sql);
ps.executeUpdate();
}
br.close();
con.close();
ps.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
主要问题是我想尝试读取日志文件并将其插入数据库,但我遇到了此错误。有人能帮我解决这个问题吗?起初,程序按预期工作,但突然停止。我想将日志文件项插入数据库
这是错误
线程“main”java.sql.SQLSyntaxErrorException中的异常:您有
SQL语法中的错误;检查与您的产品相对应的手册
MySQL服务器版本,以便在附近使用正确的语法
'2c9dc30c6ac6b815016b0452ce6341f0',ipAddress='202.184.57.105',
loginDate=2019-05',位于1号线
com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:120)
在
com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97)
在
com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122)
在
com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:953)
在
com.mysql.cj.jdbc.ClientPreparedStatement.executeUpdateInternal(ClientPreparedStatement.java:1092)
在
com.mysql.cj.jdbc.ClientPreparedStatement.executeUpdateInternal(ClientPreparedStatement.java:1040)
在
com.mysql.cj.jdbc.ClientPreparedStatement.executeLargeUpdate(ClientPreparedStatement.java:1340)
在
com.mysql.cj.jdbc.ClientPreparedStatement.executeUpdate(ClientPreparedStatement.java:1025)
位于com.example.dev1.controller.ReadLg.main(ReadLg.java:42)
下面的链接是我的数据库结构
因为您的日志中有一些类似于ipAddress='202.184.57.105'的文本,我认为这个问题是由于该类型的字符串造成的。您可以这样编写sql 字符串sql=“插入测试(RawData)值(\”“+line+”\”)
要重试您的图像未加载。