Skip to main content

JDBC FAQ Part13

28: how to display the data with the respective field names
import java.sql.*;
public class RSMD1
{
            public static void main(String[] args)throws Exception
            {
                        Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”);
Connection con = DriverMadoeer.getConnection(“jdbc:odbc:doe”,”system”,”jhon”);
Statement st = con.createStatement(ResultSet.TYPE_SCROLL_SENSEITIVE,ResultSet.CONCUR_UPDATABLE);
ResultSet rs = st.executeQuery(“select * from emp1”);
                                    ResultSetMetaData rsmd = rs.getMetaData();
System.out.println(rsmd.getColumnName(1)+”     “+rsmd.getColumnName(2)+”   “+rsmd.getColumnName(3)+”       “+rsmd.getColumnName(4));
System.out.println(“********************************”);
while(rs.next())
{
System.out.println(rs.getInt(1)+”    “+rs.getString(2)+”    “rs.getFloat(3)+”    “+rs.getString(4));
                                    }
                        }
            }
29:  What are the differences between Statement and PreparedStatement?
(or)
Tell me the situations where we should go for PreparedStatement over Statement object.
Ans:
  • When we have a requirement to execute same kind of sql query in the next sequence then we should go for PreparedStatement over Statement object.
  • For the above requirement if we use Statement object, every time execution of the same sql query DBE must perform query tokenization, query parsing, query optimization and query execution.
  • This approach will increase burden to the DBE. To reduce burden to the DBE we should go for an alternative. That is PreparedStatement over Statement object.
  • For the same requirement if we use PreparedStatement object then for our complete requirement DBE will go for only one time query parsing (tokenization, parsing, optimization and execution);
If we want to use PreparedStatement object for the above requirement then
we will use following steps.
Step1:  Prepare  PrepareStatement object by providing generalized sql query format with the required number of parameters, for this we will use the following method from Statement object.
            public PreparedStatement prepareStatement(String  sqlqueryformat)
Eg:  PreparedStatement pst = con.prepareStatement(“insert into emp1        values(?,?,?,?)”);
            When JVM encounters above instruction jvm will pickup specified generalized sql query format and send to the DBE, here DBE will process query format only one time and prepare a Buffer with the specified parameters, called as “query plan”. As a result PreparedStatement object will be created with the parameters at java side.
Step2:   Set the values to parameters in PreparedStatement object. After getting PreparedStatement object with parameters, we need to set some values to perform an operation, for this we will use the following method.
            public void setXxx(int parano,xxx value)
            where xxx may be byte, short, char, int, long, float, double.
Eg:  pst.setInt(1,111);
        pst.setString(2,”abc”);
            When  JVM  encounters the above method then jvm will set the specified values to the specified parameters at the PreparedStatement object, intern that parameter values could be reflected to query plan.
Step3: Given an intimation to DBE to perform the respective operation. After setting the values to the parameters we should give an intimation to the DBE explicitly pickup the values from query plan and perform the operation specified in generalized sql query format, for this we will use the following methods.
  • If the generalized sql query belongs to selection group then we will use following method from PreparedStatement object
public ResultSet executeQuery(…)
  • If the generalized sql query belongs to updation group then we will use the following method.
public int executeUpdate(…)
30:  Hhow to insert number of records into a table through Prepared Statement object.

import java.sql.*;
import java.io.*;
public class PreparedInsertEx
{
            public static void main(String[] args)throws Exception
            {
                        Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”);
Connection con = DriverMadoeer.getConnection(“jdbc:odbc:doe”,”system”,”jhon”);
PreparedStatement pst= con.prepareStatement(“insert into emp1 values(?,?,?,?)”);
BufferedReader br= new BufferedReader(new InputStreamReader(System.in));
while(true)
{
;                    }
            }
           

Comments

Popular posts from this blog

Java Server page tutorial part 3: JSP Life Cycle

JSP Life Cycle: A JSP life cycle can be defined as the entire process from its creation till the destruction which is similar to a servlet life cycle with an additional step which is required to compile a JSP into servlet. Following are the steps followed by a JSP Container: ◦ Compilation  ◦ Parsing the JSP.  ◦ Turning the JSP into a servlet.  ◦ Compiling  the servlet.  ◦ Initialization ◦ Execution ◦ Cleanup Architecture: 1.       JSP Compilation: When a browser asks for a JSP, the JSP engine first checks to see whether it needs to compile the page.  If the page has never been compiled, or if the JSP has been modified since it was last compiled, the JSP engine compiles the page. The compilation process involves three steps: ◦ Parsing the JSP. ◦ Turning the JSP into a servlet.  ◦ Compiling the servlet.  2.       JSP Initialization: When a container loads a JSP it invokes the jspInit() method before servicing any requests.  If you need to perform

OPERATION MANUAL FOR RS232 TO RS422/RS485 VICE-VERSA

INTRODUCTION: Milestone model LD-15U is a RS232,  to RS422/RS485 converter is designed for high-speed data transmission between computer system and or peripherals over Iong distance under high noise conditions. They provide dual line interface per signal. APPLICATIONS: Application for these converters can be for factory automation, Programmable logic controllers,, attendance recording systems, Barcode Readers, remote data transmission, remote terminals, EPABX etc. SPECIFICATIONS: Input: RS232-T×D, R×D, DSR (for control), GND (D9 Female connector) Output: RS422/RS485-Tx+, Tx-, Rx+. Rx-(D9 Male Connector). Each signal is protected by spike suppressor, fuse and has opto-isolation. Selection Switch: 1. Rear side has 2-way'SELECT' switch for selecting 2-Wire or 4-Wire mode in RS422/RS485 application. 2. (Optional) Rear side has 3-way'SELECT' switch for selecting AUTO Mode (No Handshake Signal), DSR+ Mode (+12V Control) and DSR-Model (-_12V Control) for co

JSTL-JSP Standard Tag Library part 1

Evolution of JSTL: Java is a flexible, general-purpose programming language, JavaServer pages(JSP) depends on java but hides some of the hard details of writing full- fledged programs.  The JSP Standards Tag Library(JSTL) builds on top of JSP, making it even easier to use. Architecture : In this figure large web applications are designed using java, JSTL, and othe components like databases. In large applications, it's common for requests from web browser to be handled by a java program called a servlet, which interacts with databases and other Java code on the server. The servlet figures out how it wants a response be printed and then forwards the user to the right JSTL page, which takes care of nothing more than presenting information. As JSP grew in popularity, it became clear that different sites' custom tags fell into familiar, frequently used patterns.  For example, many pages needed to loop over data to print tables and lists. Vendors of JSP c