Statement इंटरफ़ेस स्थिर SQL स्टेटमेंट को दर्शाता है, इसका उपयोग Java प्रोग्राम का उपयोग करके सामान्य उद्देश्य वाले SQL स्टेटमेंट बनाने और निष्पादित करने के लिए किया जाता है।
Statement बनाना
आप Connection इंटरफ़ेस के createStatement() मेथड का उपयोग करके इस इंटरफ़ेस का ऑब्जेक्ट बना सकते हैं। नीचे दिखाए अनुसार इस मेथड को इनवोक करके एक स्टेटमेंट बनाएं।
Statement stmt = null; try { stmt = conn.createStatement( ); . . . } catch (SQLException e) { . . . } finally { . . . }Statement ऑब्जेक्ट निष्पादित करना
एक बार जब आप स्टेटमेंट ऑब्जेक्ट बना लेते हैं, तो आप इसे execute मेथड्स में से किसी एक का उपयोग करके निष्पादित कर सकते हैं, जैसे execute(), executeUpdate() और executeQuery()।
execute(): इस मेथड का उपयोग SQL DDL स्टेटमेंट निष्पादित करने के लिए किया जाता है, यह एक बूलियन मान लौटाता है जो दर्शाता है कि ResultSet ऑब्जेक्ट प्राप्त किया जा सकता है या नहीं।
executeUpdate(): इस मेथड का उपयोग insert, update, delete जैसे स्टेटमेंट निष्पादित करने के लिए किया जाता है। यह प्रभावित पंक्तियों की संख्या दर्शाने वाला एक पूर्णांक मान लौटाता है।
executeQuery(): इस मेथड का उपयोग उन स्टेटमेंट को निष्पादित करने के लिए किया जाता है जो सारणीबद्ध डेटा लौटाते हैं (उदाहरण SELECT स्टेटमेंट)। यह ResultSet क्लास का ऑब्जेक्ट लौटाता है।
उदाहरण
निम्नलिखित JDBC एप्लिकेशन दर्शाता है कि कैसे एक स्टेटमेंट बनाएं और निष्पादित करें।
import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; public class StatementExample { public static void main(String args[]) throws SQLException { // ड्राइवर रजिस्टर करना DriverManager.registerDriver(new com.mysql.jdbc.Driver()); // कनेक्शन प्राप्त करना String mysqlUrl = "jdbc:mysql://localhost/testdb"; Connection con = DriverManager.getConnection(mysqlUrl, "root", "password"); System.out.println("Connection established......"); // Statement बनाना Statement stmt = con.createStatement(); // Statement निष्पादित करना String createTable = "CREATE TABLE Employee(“ + "Name VARCHAR(255), " + "Salary INT NOT NULL, " + "Location VARCHAR(255))"; boolean bool = stmt.execute(createTable); String insertData = "INSERT INTO Employee(" + "Name, Salary, Location) VALUES " + "('Amit', 30000, 'Hyderabad'), " + "('Kalyan', 40000, 'Vishakhapatnam'), " + "('Renuka', 50000, 'Delhi'), " + "('Archana', 15000, 'Mumbai')"; int i = stmt.executeUpdate(insertData); System.out.println("Rows inserted: "+i); ResultSet rs = stmt.executeQuery("Select *from Employee"); while(rs.next()) { System.out.print("Name: "+rs.getString("Name")+", "); System.out.print("Salary: "+rs.getInt("Salary")+", "); System.out.print("City: "+rs.getString("Location")); System.out.println(); } } }आउटपुट
Connection established...... Rows inserted: 4 Name: Amit, Salary: 30000, City: Hyderabad Name: Kalyan, Salary: 40000, City: Vishakhapatnam Name: Renuka, Salary: 50000, City: Delhi Name: Archana, Salary: 15000, City: Mumbai