milani_lucie
asked on
JSP code help needed ...
Hi,
I have the following JSP code. This is for JSP with MySQL. But i want the code in JSP with ORACLE. I have changed ALL the code EXCEPT the following line:
long order_id = ((org.gjt.mm.mysql.Prepare dStatement ) stmt).getLastInsertID();
When we are inserting a record into "Orders" table, we are not passing this value (order_id). This is generated by SEQUENCE in ORACLE and a TRIGGER on "Orders" table is used to insert the SEQUENCE value into "Orders" table. Now i want to get the newly inserted value of (order_id) in "Orders" table. The below statement will work JSP with MySQL but not JSP with ORACLE.
long order_id = ((org.gjt.mm.mysql.Prepare dStatement ) stmt).getLastInsertID();
Can you please provide the code in JSP with ORACLE ?
JSP Code:
========
<%
Class.forName("org.gjt.mm. mysql.Driv er");
java.sql.Connection cn = java.sql.DriverManager.get Connection ("jdbc:mys ql://local host/shop" );
String query = "INSERT INTO orders VALUES ('', ?, ?, ?, ?, ?, ?, ?, ?)";
java.sql.PreparedStatement stmt = cn.prepareStatement(query) ;
stmt.setString(1, request.getParameter("firs tname"));
stmt.setString(2, request.getParameter("surn ame"));
stmt.setString(3, request.getParameter("addr ess"));
stmt.setString(4, request.getParameter("city "));
stmt.setString(5, request.getParameter("post code"));
stmt.setString(6, request.getParameter("card _number")) ;
stmt.setString(7, request.getParameter("card _type"));
stmt.setString(8, request.getParameter("tota lvalue"));
stmt.executeUpdate();
long order_id = ((org.gjt.mm.mysql.Prepare dStatement ) stmt).getLastInsertID();
String order_info_query = "INSERT INTO order_info VALUES ('', ?, ?, ?)";
Enumeration products = basket.getProducts();
while (products.hasMoreElements( ))
{
Product product = (Product) products.nextElement();
stmt = cn.prepareStatement(order_ info_query );
stmt.setLong(1, order_id);
stmt.setInt (2, Integer.parseInt(product.g etId()));
stmt.setInt (3, product.getQuantity());
stmt.executeUpdate();
}
stmt.close();
cn.close();
basket.emptyBasket();
%>
Thanks
I have the following JSP code. This is for JSP with MySQL. But i want the code in JSP with ORACLE. I have changed ALL the code EXCEPT the following line:
long order_id = ((org.gjt.mm.mysql.Prepare
When we are inserting a record into "Orders" table, we are not passing this value (order_id). This is generated by SEQUENCE in ORACLE and a TRIGGER on "Orders" table is used to insert the SEQUENCE value into "Orders" table. Now i want to get the newly inserted value of (order_id) in "Orders" table. The below statement will work JSP with MySQL but not JSP with ORACLE.
long order_id = ((org.gjt.mm.mysql.Prepare
Can you please provide the code in JSP with ORACLE ?
JSP Code:
========
<%
Class.forName("org.gjt.mm.
java.sql.Connection cn = java.sql.DriverManager.get
String query = "INSERT INTO orders VALUES ('', ?, ?, ?, ?, ?, ?, ?, ?)";
java.sql.PreparedStatement
stmt.setString(1, request.getParameter("firs
stmt.setString(2, request.getParameter("surn
stmt.setString(3, request.getParameter("addr
stmt.setString(4, request.getParameter("city
stmt.setString(5, request.getParameter("post
stmt.setString(6, request.getParameter("card
stmt.setString(7, request.getParameter("card
stmt.setString(8, request.getParameter("tota
stmt.executeUpdate();
long order_id = ((org.gjt.mm.mysql.Prepare
String order_info_query = "INSERT INTO order_info VALUES ('', ?, ?, ?)";
Enumeration products = basket.getProducts();
while (products.hasMoreElements(
{
Product product = (Product) products.nextElement();
stmt = cn.prepareStatement(order_
stmt.setLong(1, order_id);
stmt.setInt (2, Integer.parseInt(product.g
stmt.setInt (3, product.getQuantity());
stmt.executeUpdate();
}
stmt.close();
cn.close();
basket.emptyBasket();
%>
Thanks
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
and call this method as:
long order_id = getLastInsertID();
Open in new window