국내산라이츄
303
2017-06-19 18:54:08.0
0
21

[SQL] ODBC Microsoft Access Driver 오류입니다.


<%@ page language="java" contentType="text/html; charset=EUC-KR"
    pageEncoding="EUC-KR"%>
        <%@ page import="java.sql.*"%>
<%@ page import="java.util.Date, java.text.SimpleDateFormat" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">
<title>Insert title here</title>
</head>
<body>
<%
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

String url = "jdbc:odbc:dna";
String id = "";
String pass = "";
String date = request.getParameter("date"); 
String code = request.getParameter("code"); 
String price = request.getParameter("price"); 
String name = request.getParameter("name"); 

try {
Connection conn = DriverManager.getConnection(url,id,pass);

String sql = "INSERT INTO dna (ORDER,PRICE,CODE,DNA_NAME) VALUES(?,?,?,?)";
PreparedStatement pstmt = conn.prepareStatement(sql);

pstmt.setString(1, date);
pstmt.setString(2, code);
pstmt.setString(3, price);
pstmt.setString(4, name);

pstmt.execute();
pstmt.close();

conn.close();
} catch(SQLException e) {
    System.out.println("SQLException: " + e.getMessage());
    System.out.println("SQLState: " + e.getSQLState());

%>
  <script language=javascript>
   self.window.alert("Added succesfully!");
   location.href="list.jsp"; 
   </script>
</body>
</html>
DB에 추가도 안되네요...ㅠㅠ 
이 코드대로 돌리면 

SQLException: [Microsoft][ODBC Microsoft Access Driver] Syntax error in INSERT INTO statement.
SQLState: 37000
이렇게 뜹니다. 추가나 수정은 Access로 하면 반영은 되지만, 저 페이지상으로 직접은 못 해요.. 

데이터가 짧은 문자열이라서 발생하는건가 싶어서 수정해봤는데 여전히 같은 오류가 발생하고 있습니다.. 

날짜는 둘 다 이런 식으로 지정이 되어 있고요.. 

Insert into 오류는 추가할 때, update 오류는 수정활 때 납니다. 
둘 다 입력은 텍스트박스에서 받아서 저장하는 식이예요. 지정은 String으로 되어 있습니다. 

+
mysql space에 입력했는데 위의 업데이트문은 일부는 파란 색이고 일부 변수는 검정색인데, DB 연결이 안 돼서 그러는건가요? 
0
0
  • 답변 0

  • 로그인을 하시면 답변을 등록할 수 있습니다.