Download presentation
Presentation is loading. Please wait.
Published byAllan Paul Modified over 9 years ago
1
Database Processing with JSP ISYS 350
2
Example: Enter CID in a box and retrieve the customer record
3
Create a CID ListBox
4
SQL Select Command Select all records from a table: SELECT * FROM tableName; Select records meeting criteria: SELECT * FROM tableName WHERE criteria;
5
Creating a String Containing SQL Select Command Assuming the CID is entered in a HTML textbox named “cid” or selected from a HTML listbox named “cid”: String myCIDS, strSQL; myCid=request.getParameter("cid"); strSQL="select * from customer where cid='" + myCid + "'";
6
SQL Insert Command INSERT INTO tableName VALUES (field values separated by commas); Ex 1. Customer table with CID, CNAME, CITY, RATING. INSERT INTO CUSTOMER VALUES (‘C1’, ‘SMITH’, ‘SF’, ‘A’); Ex 2. Orders table with OID, OrderDate, CID, SalesPerson INSERT INTO ORDERS VALUES (‘O11’, #9/28/02#, ‘C1’, ‘Peter’);
7
Creating A String Containing SQL Insert Command myCid=request.getParameter("cid"); myCname=request.getParameter("cname"); myCity=request.getParameter("city"); myRating=request.getParameter("rating"); strSQL = "Insert into Customer values ('"; strSQL += myCid + "','" + myCname + "','"; strSQL += myCity + "','" + myRating + "')";
8
Creating a Java DB (Derby) Database with NetBeans Tutorial: – http://netbeans.org/kb/docs/ide/java- db.html#starting http://netbeans.org/kb/docs/ide/java- db.html#starting
9
Creating a Database: Right click Java DB and select Create Database Note: Username and password.
10
Connect or Delete a database: Right click database name
11
Connected Database
12
Creating a New Table: Open the App folder, and: 1. Right click Tables and select create table 2. Enter Table name 3. Click Add column to define field
13
Create a New Table Table name: Customer Fields: – CID: Type – CHAR with size 5; primary key – Cname: Type – CHAR with size 20 – City:Type – CHAR with size 20 – Rating: Type – CHAR with size 1
14
To insert records to a table: Right-click the table name and select View Data From the record view window, click the Insert Record button:
15
Database Processing with JSP Must import java.sql using page directive: – Need a driver: – Java Derby database: – Example: String DBUrl="jdbc:derby://localhost:1527/SalesDBJava";
16
Define Database Objects Define connection object: – connection = DriverManager.getConnection(DBUrl); Define SQL Statement object: – Statement SQLStatement = connection.createStatement(); SQL Statement methods: – 1. executeQuery: This method executes SQL Select statement and create a resultset object: – Example: strSQL="select * from customer where cid='" + myCid + "'"; ResultSet rs = SQLStatement.executeQuery(strSQL); – 2. executeUpdate: This method executes SQL Insert, Delete and Update statement and returns the number of records affected by the statement. – Example: strSQL = "Insert into Customer values ('"; strSQL += myCid + "','" + myCname + "','"; strSQL += myCity + "','" + myRating + "')"; int Count; Count=SQLStatement.executeUpdate(strSQL);
17
JDBC ResultSet The rows that satisfy a particular query are called the result set. The number of rows returned in a result set can be zero or more. A user can access the data in a result set using a cursor one row at a time from top to bottom. A cursor can be thought of as a pointer to the rows of the result set that has the ability to keep track of which row is currently being accessed.
18
ResultSet Methods Next() : Returns true if the cursor is now positioned on a row and false if the cursor is positioned after the last row. previous() first() last()
19
HTML Form Enter CID: Insert title here Enter CID:
20
<% Connection connection = null; String DBUrl="jdbc:derby://localhost:1527/SalesDBJava"; try { String myCid, strSQL, Cname, City, Rating; connection = DriverManager.getConnection(DBUrl,"dchao","dchao"); Statement SQLStatement = connection.createStatement(); myCid=request.getParameter("cid"); strSQL="select * from customer where cid='" + myCid + "'"; ResultSet rs = SQLStatement.executeQuery(strSQL); if (rs.next()) { Cname=rs.getString("CNAME"); City=rs.getString("CITY"); Rating=rs.getString("Rating"); rs.close(); %> Cname: "> City: "> Rating: "> <% } else { out.println("Customer not exist!"); rs.close(); } catch(SQLException e) { out.println("Something wrong"); out.println(e.getMessage()); } %> Jdbc:derby demo: Accessing a Derby database SalesDBJava with username and password. Note: Using Derby, SQL stastement cannot end with “;”
21
Select CID: <% Connection connection = null; String DBUrl="jdbc:derby://localhost:1527/SalesDBJava"; try { String myCid, strSQL; connection = DriverManager.getConnection(DBUrl,"dchao","dchao"); Statement SQLStatement = connection.createStatement(); strSQL="select cid from customer"; ResultSet rs = SQLStatement.executeQuery(strSQL); while (rs.next()) { myCid=rs.getString("cid"); out.println(" " + myCid + " "); } catch(SQLException e) { out.println(e.getMessage()); } %> Derby demo:Populate a Listbox using a ResultSet
22
Derby demo:Show Records in a Table <% Connection connection = null; String DBUrl="jdbc:derby://localhost:1527/SalesDBJava"; try { String Cid, strSQL, Cname, City, Rating; connection = DriverManager.getConnection(DBUrl,"dchao","dchao"); Statement SQLStatement = connection.createStatement(); strSQL="select * from customer"; ResultSet rs = SQLStatement.executeQuery(strSQL); %> CID Cname City Rating <% while (rs.next()) { Cid=rs.getString("CID"); Cname=rs.getString("CNAME"); City=rs.getString("CITY"); Rating=rs.getString("Rating"); %> <% } rs.close(); } catch(SQLException e) { out.println(e.getMessage()); } %>
23
Jdbc:odbc: Reading Cookie and Customer Record <% try{ String myCid, strSQL, Cname, City, Rating; Cookie[] cookies = request.getCookies(); myCid=cookies[0].getValue(); Connection connection = null; String DBUrl="jdbc:odbc:MyCustomer"; connection = DriverManager.getConnection(DBUrl); Statement SQLStatement = connection.createStatement(); strSQL="select * from customer where cid='" + myCid + "'"; ResultSet rs = SQLStatement.executeQuery(strSQL); if (rs.next()) { Cname=rs.getString("CNAME"); City=rs.getString("CITY"); Rating=rs.getString("Rating"); rs.close(); %> Cname: "> City: "> Rating: "> <% } else { out.println("Customer not exist!"); rs.close(); } catch(SQLException e) { out.println(e.getMessage()); } %>
24
Insert a New Record <% Connection connection = null; String DBUrl="jdbc:odbc:myCustomer"; try { String myCid, strSQL, myCname, myCity, myRating; connection = DriverManager.getConnection(DBUrl); Statement SQLStatement = connection.createStatement(); myCid=request.getParameter("cid"); myCname=request.getParameter("cname"); myCity=request.getParameter("city"); myRating=request.getParameter("rating"); strSQL = "Insert into Customer values ('"; strSQL += myCid + "','" + myCname + "','"; strSQL += myCity + "','" + myRating + "')"; int Count; Count=SQLStatement.executeUpdate(strSQL); if (Count==1) out.println("Insertion sucessful"); } catch(SQLException e) { out.println(e.getMessage()); } %>
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.