Editing Database with DBEditDatabase structure Database data Attribute properties... Connection to database Connection java.sql.DriverManager.getConnectionString urlDatabase, String u
Trang 1Chapter 8 JDBC
ITSS Java Programming NGUYEN Hong Quang, HUT
Trang 2Components of JDBC
Trang 3JDBC 1
JDBC API
‘java.sql’ and ‘javax.sql’ package
SQL Interfaces for application
JDBC Driver Manager
manage two or more JDBC drivers
‘DriverManager’ class in the java.sql package
Trang 4 Native API partly – Java technology-based driver
Net-protocol all - Java technology-based driver
Native-protocol Java technology-based driver
Trang 5Setting classpath for JDBC
Trang 6DbEdit plug-ins : install
Trang 7Activate DbEdit
Trang 8Connecting DbEdit with MySQL
Trang 9Editing Database with DBEdit
Database
structure
Database data
Attribute properties
Trang 10Execute SQL command with DbEdit
Trang 11 Resultset.getParameter
Connection.close()
Trang 13Loading of JDBC driver : Exemple
Exemple : Loading JDBC driver of MySQL database
try {
Class.forName ("com.mysql.jdbc.Driver");
}
catch (ClassNotFoundException e){
System.err.println (“Do not connect");
}
Note : set CLASSPATH to find JDBC Driver class (slide 5)
Trang 14Connection to database
Connection java.sql.DriverManager.getConnection(String urlDatabase, String userName, String password) throws SQLException
Create a connection to the urlDatabase : return the
Trang 15Connection to database : Exemple
String userName = “student";
String userPassword = “student";
String url = "jdbc:mysql://localhost:3306/qlsv";
Trang 18Execution of Select SQL statement
ResultSet java.sql.Statement.executeQuery(String
sqlStatement) throws SQLException
Execute Select SQL statement
Return an ResultSet object
Trang 19Execution of Select SQL statement : Exemple
Statement stmt = null;
ResultSet res = null;
String sql = "Select * From Student";
Trang 20Processing data in a ResultSet object
Start rs.next
rs.getInt(“ID”)
rs.getInt(1)
rs.getString(“NAME”)
rs.getString(2)
Trang 21List of getting data method
CHAR, VARCHAR, LONGVARCHAR String getString
NUMERIC, DECIMAL java.math.Decimal getBigDecimal
BINARY, VARBINARY,
Trang 22Execution of Select SQL statement : Exemple
String sql = "Select * From Student";
try {
res = stmt.executeQuery(sql);
while (res.next()) {
Integer id = res.getInt("ID");
String name = res.getString("Name");
System out.println(id + " " + name);
Trang 23ResultSet : exemple
Trang 24Execution of others SQL statement :
INSERT, UPDATE, DELETE
Syntax: int java.sql.Statement.executeUpdate(String
sqlStatement) throws SQLException
Execute SQL statement: INSERT, UPDATE, or DELETE
Trang 25Exemple Update SQL Statement
String sql = "Update Student Set score=8 Where id=3";
Trang 26Exemple Update SQL Statement
Trang 28Application sample : Summary
Create database “qlsv” and table “student” in
Calling a Query SQL statement
Calling a Update SQL statement
Close connection
Trang 29Database Administation with MySQL 1
Show databases;
Trang 30Database Administation with MySQL 2
Create a database :
CREATE DATABASE TEMPDB;
Delete that database :
DROP DATABASE TEMPDB;
Use a database :
USE TEMPDB;
Display tables in a database :
SHOW TABLES;
Trang 31Create a table
column_name1 type [modifiers]
[ , column_name2 type [modifiers]] )
CREATE TABLE student (
ID int(6) PRIMARY KEY,
Trang 32Input records with DbEdit
Trang 33Show all students : declaration
public class ShowAllStudents {
Connection con = null;
Statement stmt = null;
String userName = "root";
String userPassword = "quangnh";
String drv = "com.mysql.jdbc.Driver";
String url = "jdbc:mysql://localhost:3306/qlsv";
Trang 34Show all students : connecting to a database
try {
Class.forName (drv);
}
catch (ClassNotFoundException e){
System.err.println ("Do not connect to database");
}
try {
// Connection to database
con = DriverManager.getConnection(url,userName,userPassword); stmt = con.createStatement();
}
catch (SQLException e) {
e.printStackTrace();
}
Trang 35Show all students : connecting to a database
ResultSet res = null;
String sql = "Select * From Student“;
try {// Execute Select SQL statement
res = stmt.executeQuery(sql);
while (res.next()) {
int id = res.getInt("ID");
String name = res.getString("Name");
int mark = res.getInt("mark");
String address = res.getString("Address");
System.out.println(id + " " + name + " “ + address + " " + mark); }
Trang 36Close all of object
}
Trang 37Hands-on exercise
Install softwares necessary :
Install MySQL Server
Install DbEdit plug-ins to Eclipse
Test Java programs with JDBC :
Test the ShowAllStudents exemple in the lecture
Write a Java program to display all of student who has 9 marks
Update all student who has 7 marks with new 8 marks
Insert into database the following student :
“Nguyen Xuan Huy”, “Ha Noi”, “0983567459”, “7”
Delete all student who live in “Ha Tay”
Trang 38 DROP TABLE table_name
Alter table student change score mark int