This week's book giveaway is in the OO, Patterns, UML and Refactoring forum. We're giving away four copies of Refactoring for Software Design Smells: Managing Technical Debt and have Girish Suryanarayana, Ganesh Samarthyam & Tushar Sharma on-line! See this thread for details.
i am stuck in a problem for which i need your help.i will brief you about the issue below.
I am having Multiple Insert Statements which i need to execute to put the data in the database.i have a doubt about the use of the executeUpdate() function in the statement interface. sample code is as below.
stmt = conn.prepareStatement("INSERT INTO Client ( clientPk, provincePk, countryPk, statusPk, branchPk, salutation, ) VALUES(PID, 2, '123123123', '123', '66', 1, 1 );"); int n =stmt.executeUpdate();
Now the problem is how do i insert multiple Insert statements using the conn.prepareStatement().should i do like stmt = conn.prepareStatement("") int n =stmt.executeUpdate(); stmt = conn.prepareStatement("") int n =stmt.executeUpdate(); stmt = conn.prepareStatement("") int n =stmt.executeUpdate(); ..................................
should i use the same steps to execute each individual query and then use executeUpdate(). Please let me know the correct procedure to be followed to execute these tasks.waiting for a positive reply from your side.
No, you do not need to call prepareStatement() every line. If the SQL code to perform the insert is not changing, you can call the same prepareStatement() object multiple times with different parameters such as:
The trick is to replace the data with "?" with the stuff you need changed every line. This code is a lot safer (from SQL injection) and performance than what you had. For completeness, you should really replace every input parameter with ? and use setString/setDouble/etc to set it.