• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Bear Bibeault
  • Ron McLeod
  • Jeanne Boyarsky
  • Paul Clapham
Sheriffs:
  • Tim Cooke
  • Liutauras Vilda
  • Junilu Lacar
Saloon Keepers:
  • Tim Moores
  • Stephan van Hulst
  • Tim Holloway
  • fred rosenberger
  • salvin francis
Bartenders:
  • Piet Souris
  • Frits Walraven
  • Carey Brown

Servlet - JDBC interaction

 
Greenhorn
Posts: 29
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Dear friends ,
i'm using JDBC connectivity in the HttpServlet . Here is my query for
executeQuery as a parameter ,
Select Promotion_Date from Promotion where Emp_Code = a4
but after this statement i get error message as given below,
ERROR:
[Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 1.
can anybody help me out ? Thanx in advance !
from ,
vikram .
 
Vikram Deshmukh
Greenhorn
Posts: 29
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Here is a code to ease the Qn.
//all req imports
public class Selection extends HttpServlet
{
Connection con;
Statement stmt;
public void init(ServletConfig config) throws ServletException
{
super.init(config);
// initializing database drivers
String driverName,url,user,password;
Driver driver;
try
{
driverName = "sun.jdbc.odbc.JdbcOdbcDriver";//using JdbcOdbc bridge
driver = (Driver)Class.forName(driverName).newInstance();// registering driver
url = "jdbc dbc:Promo"; // Data Source Name
user = "";
password = "";
con = DriverManager.getConnection(url,user,password);
stmt = con.createStatement();
}
catch(Exception e)
{
e.printStackTrace();
}
}
public void doGet(HttpServletRequest req,HttpServletResponse res)
throws IOException, ServletException
{
String chbxeCode = new String();
String chbxproDate = new String();
String chbxproPost = new String();
String query = new String();
String str = null;
boolean flag = false;
String eCode = null;
String ePromoDate = null;
String ePromoPost = null;
Object obj = null;
PrintWriter pw = null;
res.setContentType("text/html");
pw = res.getWriter();
query = "Select ";
str = req.getParameter("Field_Names"); // GETTING FIELD NAMES
query = query + str + " from Promotion";
chbxeCode = chbxeCode+ req.getParameter("eCode"); // GETTING STATUS OF CHECKBOX
chbxproDate = chbxproDate + req.getParameter("proDate");
chbxproPost = chbxproPost + req.getParameter("proPost");
// NOW QUERY FORMED HERE IN BETWEEN
// ACCORDING TO CHECKBOX
pw.println(query);// this prints query as just to verify if properly constructed , & IT SHOWS XPECTED QUERY
// NOW MANAGEMENT OF DATABASE
try
{
ResultSet rs = stmt.executeQuery(query); // here is a problem
pw.println("Yes i came inside try !");// IT DOESNT PRINT THIS STATEMENT
ResultSetMetaData rsmd = rs.getMetaData();
int numcols = rsmd.getColumnCount();
// TITLE THE TABLE WITH RESULT SET'S COLUMN LABELS
// ..........code
}
catch(SQLException e)
{
}
}
public void destroy()
{
try
{
stmt.close();
con = null;
}
catch(SQLException e)
{
}
}
}
 
Ranch Hand
Posts: 18944
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
ur query u've written is
Select Promotion_Date from Promotion where Emp_Code = a4
probably Emp_Code must be a field of text,so a4 should be in single or double quotes,
(run the sql query seperately and confirm its executing)
 
Don't get me started about those stupid light bulbs.
    Bookmark Topic Watch Topic
  • New Topic