JDBC连接 Mysql常用代码
注意:数据库名字为 OLED,所用表为user,端口号3306。
1、 创建数据库和表
创建数据库
create database OLED;
创建表
CREATE TABLE user(
id INT AUTO_INCREMENTPRIMARY KEY ,
name VARCHAR(30) NOT NULL ,
password VARCHAR(32) NOT NULL ,
age INT NOTNULL ,
sex VARCHAR(2) DEFAULT '男' ,
birthday DATE
) ;
2、插入数据
INSERT INTOuser(name,password,age,sex,birthday) VALUES ('张三','www.zhangsan.cn',34,'男','2000-02-24') ;
INSERT INTOuser(name,password,age,sex,birthday) VALUES ('李四','www.lisi.cn',35,'男','2002-03-12') ;
3、JDBC连接代码
import java.sql.Connection ;
import java.sql.DriverManager ;
import java.sql.SQLException ;
public class ConnectionDemo02{
//定义MySQL的数据库驱动程序
publicstatic final String DBDRIVER = "org.gjt.mm.mysql.Driver" ;
//定义MySQL数据库的连接地址
publicstatic final String DBURL = "jdbc:mysql://localhost:3306/OLED" ;
//MySQL数据库的连接用户名
publicstatic final String DBUSER = "root" ;
//MySQL数据库的连接密码
publicstatic final String DBPASS = "mysqladmin" ;
publicstatic void main(String args[]){
Connectionconn = null ; // 数据库连接
try{
Class.forName(DBDRIVER); // 加载驱动程序
}catch(ClassNotFoundExceptione){
e.printStackTrace();
}
try{
conn= DriverManager.getConnection(DBURL,DBUSER,DBPASS) ;
}catch(SQLExceptione){
e.printStackTrace();
}
System.out.println(conn); // 如果此时可以打印表示连接正常
try{
conn.close(); // 数据库关闭
}catch(SQLExceptione){
e.printStackTrace();
}
}
};
4、JDBC插入代码
1)、
import java.sql.Connection ;
import java.sql.DriverManager ;
import java.sql.Statement ;
public class InsertDemo01{
//定义MySQL的数据库驱动程序
publicstatic final String DBDRIVER = "org.gjt.mm.mysql.Driver" ;
//定义MySQL数据库的连接地址
publicstatic final String DBURL = "jdbc:mysql://localhost:3306/OLED" ;
//MySQL数据库的连接用户名
publicstatic final String DBUSER = "root" ;
//MySQL数据库的连接密码
publicstatic final String DBPASS = "mysqladmin" ;
publicstatic void main(String args[]) throws Exception { // 所有的异常抛出
Connectionconn = null ; // 数据库连接
Statementstmt = null ; // 数据库操作
Class.forName(DBDRIVER); // 加载驱动程序
Stringsql = "INSERT INTO user(name,password,age,sex,birthday) "+
"VALUES ('张三','www.zhangsan.cn',34,'男','2000-02-24')" ;
conn= DriverManager.getConnection(DBURL,DBUSER,DBPASS) ;
stmt= conn.createStatement() ; // 实例化Statement对象
stmt.executeUpdate(sql); // 执行数据库更新操作
stmt.close(); // 关闭操作
conn.close(); // 数据库关闭
}
};
2)、
import java.sql.Connection ;
import java.sql.DriverManager ;
import java.sql.Statement ;
public class InsertDemo02{
//定义MySQL的数据库驱动程序
publicstatic final String DBDRIVER = "org.gjt.mm.mysql.Driver" ;
//定义MySQL数据库的连接地址
publicstatic final String DBURL = "jdbc:mysql://localhost:3306/OLED" ;
//MySQL数据库的连接用户名
publicstatic final String DBUSER = "root" ;
//MySQL数据库的连接密码
publicstatic final String DBPASS = "mysqladmin" ;
publicstatic void main(String args[]) throws Exception { // 所有的异常抛出
Connectionconn = null ; // 数据库连接
Statementstmt = null ; // 数据库操作
Class.forName(DBDRIVER); // 加载驱动程序
Stringname = "李四" ; // 姓名
Stringpassword = " www.lisi.cn " ; // 密码
intage = 35 ; // 年龄
Stringsex = "男" ; // 性别
Stringbirthday = "2002-03-12" ;
Stringsql = "INSERT INTO user(name,password,age,sex,birthday) "+
"VALUES('"+name+"','"+password+"',"+age+",'"+sex+"','"+birthday+"')";
conn= DriverManager.getConnection(DBURL,DBUSER,DBPASS) ;
stmt= conn.createStatement() ; // 实例化Statement对象
stmt.executeUpdate(sql); // 执行数据库更新操作
stmt.close(); // 关闭操作
conn.close(); // 数据库关闭
}
};
5、JDBC修改代码
import java.sql.Connection ;
import java.sql.DriverManager ;
import java.sql.Statement ;
public class UpdateDemo{
//定义MySQL的数据库驱动程序
publicstatic final String DBDRIVER = "org.gjt.mm.mysql.Driver" ;
//定义MySQL数据库的连接地址
publicstatic final String DBURL = "jdbc:mysql://localhost:3306/OLED" ;
//MySQL数据库的连接用户名
publicstatic final String DBUSER = "root" ;
//MySQL数据库的连接密码
publicstatic final String DBPASS = "mysqladmin" ;
publicstatic void main(String args[]) throws Exception { // 所有的异常抛出
Connectionconn = null ; // 数据库连接
Statementstmt = null ; // 数据库操作
intid = 2 ;
Class.forName(DBDRIVER); // 加载驱动程序
Stringname = "包子" ; // 姓名
Stringpassword = "baozi" ; // 密码
intage = 22 ; // 年龄
Stringsex = "男" ; // 性别
Stringbirthday = "1992-05-28" ;
Stringsql = "UPDATE user SET name='"+name+"',password='"
+password+"', age=" + age + ",sex='"+sex+"',birthday='"
+birthday+"'WHERE id="+id ;
conn= DriverManager.getConnection(DBURL,DBUSER,DBPASS) ;
stmt= conn.createStatement() ; // 实例化Statement对象
stmt.executeUpdate(sql); // 执行数据库更新操作
stmt.close(); // 关闭操作
conn.close(); // 数据库关闭
}
};
6、JDBC查找代码
1)、
import java.sql.Connection ;
import java.sql.DriverManager ;
import java.sql.SQLException ;
import java.sql.Statement ;
import java.sql.ResultSet ;
public class ResultSetDemo01{
//定义MySQL的数据库驱动程序
publicstatic final String DBDRIVER = "org.gjt.mm.mysql.Driver" ;
//定义MySQL数据库的连接地址
publicstatic final String DBURL = "jdbc:mysql://localhost:3306/OLED" ;
//MySQL数据库的连接用户名
publicstatic final String DBUSER = "root" ;
//MySQL数据库的连接密码
publicstatic final String DBPASS = "mysqladmin" ;
publicstatic void main(String args[]) throws Exception {
Connectionconn = null ; // 数据库连接
Statementstmt = null ; // 数据库的操作对象
ResultSetrs = null ; // 保存查询结果
Stringsql = "SELECT id,name,password,age,sex,birthday FROM user" ;
Class.forName(DBDRIVER); // 加载驱动程序
conn= DriverManager.getConnection(DBURL,DBUSER,DBPASS) ;
stmt= conn.createStatement() ;
rs= stmt.executeQuery(sql) ;
while(rs.next()){ // 依次取出数据
intid = rs.getInt("id") ; // 取出id列的内容
Stringname = rs.getString("name") ; //取出name列的内容
Stringpassword = rs.getString("password") ; // 取出password列的内容
intage = rs.getInt("age") ; // 取出age列的内容
Stringsex = rs.getString("sex") ; // 取出sex列的内容
java.util.Dated = rs.getDate("birthday") ; // 取出birthday列的内容
System.out.print("编号:" + id + ";") ;
System.out.print("姓名:" + name + ";") ;
System.out.print("密码:" + password + ";") ;
System.out.print("年龄:" + age + ";") ;
System.out.print("性别:" + sex + ";") ;
System.out.println("生日:" + d + ";") ;
System.out.println("-----------------------");
}
rs.close();
stmt.close();
conn.close(); // 数据库关闭
}
};
2)、
import java.sql.Connection ;
import java.sql.DriverManager ;
import java.sql.SQLException ;
import java.sql.Statement ;
import java.sql.ResultSet ;
public class ResultSetDemo02{
//定义MySQL的数据库驱动程序
publicstatic final String DBDRIVER = "org.gjt.mm.mysql.Driver" ;
//定义MySQL数据库的连接地址
publicstatic final String DBURL = "jdbc:mysql://localhost:3306/OLED" ;
//MySQL数据库的连接用户名
publicstatic final String DBUSER = "root" ;
//MySQL数据库的连接密码
publicstatic final String DBPASS = "mysqladmin" ;
publicstatic void main(String args[]) throws Exception {
Connectionconn = null ; // 数据库连接
Statementstmt = null ; // 数据库的操作对象
ResultSetrs = null ; // 保存查询结果
Stringsql = "SELECT id,name,password,age,sex,birthday FROM user" ;
Class.forName(DBDRIVER); // 加载驱动程序
conn= DriverManager.getConnection(DBURL,DBUSER,DBPASS) ;
stmt= conn.createStatement() ;
rs= stmt.executeQuery(sql) ;
while(rs.next()){ // 依次取出数据
intid = rs.getInt(1) ; // 取出id列的内容
Stringname = rs.getString(2) ; // 取出name列的内容
Stringpassword = rs.getString(3) ; // 取出password列的内容
intage = rs.getInt(4) ; // 取出age列的内容
Stringsex = rs.getString(5) ; // 取出sex列的内容
java.util.Dated = rs.getDate(6) ; // 取出birthday列的内容
System.out.print("编号:" + id + ";") ;
System.out.print("姓名:" + name + ";") ;
System.out.print("密码:" + password + ";") ;
System.out.print("年龄:" + age + ";") ;
System.out.print("性别:" + sex + ";") ;
System.out.println("生日:" + d + ";") ;
System.out.println("-----------------------");
}
rs.close();
stmt.close();
conn.close(); // 数据库关闭
}
};
7、PreparedStatement 插入代码
import java.sql.Connection ;
import java.sql.DriverManager ;
import java.sql.SQLException ;
import java.sql.PreparedStatement ;
import java.text.SimpleDateFormat ;
public class PreparedStatementDemo01 {
//定义MySQL的数据库驱动程序
publicstatic final String DBDRIVER = "org.gjt.mm.mysql.Driver" ;
//定义MySQL数据库的连接地址
publicstatic final String DBURL = "jdbc:mysql://localhost:3306/OLED" ;
//MySQL数据库的连接用户名
publicstatic final String DBUSER = "root" ;
//MySQL数据库的连接密码
publicstatic final String DBPASS = "mysqladmin" ;
publicstatic void main(String args[]) throws Exception{ // 所有异常抛出
Connectionconn = null ; // 数据库连接
PreparedStatementpstmt = null ; // 数据库操作
Stringname = "鲍礼彬" ; // 姓名
Stringpassword = "www.baozi.cn" ; //密码
intage = 22 ; // 年龄
Stringsex = "男" ; // 性别
Stringbirthday = "1992-05-28" ; // 生日
java.util.Datetemp = null ;
temp= new SimpleDateFormat("yyyy-MM-dd").parse(birthday) ;
java.sql.Datebir = new java.sql.Date(temp.getTime()) ;
Stringsql = "INSERT INTO user(name,password,age,sex,birthday) VALUES (?,?,?,?,?)" ;
Class.forName(DBDRIVER); // 加载驱动程序
conn= DriverManager.getConnection(DBURL,DBUSER,DBPASS) ;
pstmt= conn.prepareStatement(sql) ; // 实例化PreapredStatement对象
pstmt.setString(1,name);
pstmt.setString(2,password);
pstmt.setInt(3,age);
pstmt.setString(4,sex);
pstmt.setDate(5,bir);
intt = pstmt.executeUpdate() ; // 执行更新
System.out.println(t);
pstmt.close();
conn.close(); // 数据库关闭
}
};
8、PreparedStatement 查询代码
1)、
import java.sql.Connection ;
import java.sql.DriverManager ;
import java.sql.SQLException ;
import java.sql.ResultSet ;
import java.sql.PreparedStatement ;
import java.text.SimpleDateFormat ;
public class PreparedStatementDemo02 {
//定义MySQL的数据库驱动程序
publicstatic final String DBDRIVER = "org.gjt.mm.mysql.Driver" ;
//定义MySQL数据库的连接地址
publicstatic final String DBURL = "jdbc:mysql://localhost:3306/OLED" ;
//MySQL数据库的连接用户名
publicstatic final String DBUSER = "root" ;
//MySQL数据库的连接密码
publicstatic final String DBPASS = "mysqladmin" ;
publicstatic void main(String args[]) throws Exception{ // 所有异常抛出
Connectionconn = null ; // 数据库连接
PreparedStatementpstmt = null ; // 数据库操作
StringkeyWord = "习" ; // 设置查询关键字
ResultSetrs = null ; // 接收查询结果
Stringsql = "SELECT id,name,password,age,sex,birthday " +
"FROM user WHERE name LIKE ? OR password LIKE ? OR sex LIKE ?" ;
Class.forName(DBDRIVER); // 加载驱动程序
conn= DriverManager.getConnection(DBURL,DBUSER,DBPASS) ;
pstmt= conn.prepareStatement(sql) ; // 实例化PreapredStatement对象
pstmt.setString(1,"%"+keyWord+"%");
pstmt.setString(2,"%"+keyWord+"%");
pstmt.setString(3,"%"+keyWord+"%");
rs= pstmt.executeQuery() ; // 执行查询
while(rs.next()){
intid = rs.getInt(1) ;
Stringname = rs.getString(2) ;
Stringpass = rs.getString(3) ;
intage = rs.getInt(4) ;
Stringsex = rs.getString(5) ;
java.util.Dated = rs.getDate(6) ;
System.out.print("编号:" + id + ";") ;
System.out.print("姓名:" + name + ";") ;
System.out.print("密码:" + pass + ";") ;
System.out.print("年龄:" + age + ";") ;
System.out.print("性别:" + sex + ";") ;
System.out.println("生日:" + d + ";") ;
System.out.println("-------------------------");
}
rs.close();
pstmt.close();
conn.close() ; // 数据库关闭
}
};
2)、
import java.sql.Connection ;
import java.sql.DriverManager ;
import java.sql.SQLException ;
import java.sql.ResultSet ;
import java.sql.PreparedStatement ;
import java.text.SimpleDateFormat ;
public class PreparedStatementDemo03 {
//定义MySQL的数据库驱动程序
publicstatic final String DBDRIVER = "org.gjt.mm.mysql.Driver" ;
//定义MySQL数据库的连接地址
publicstatic final String DBURL = "jdbc:mysql://localhost:3306/OLED" ;
//MySQL数据库的连接用户名
publicstatic final String DBUSER = "root" ;
//MySQL数据库的连接密码
publicstatic final String DBPASS = "mysqladmin" ;
publicstatic void main(String args[]) throws Exception{ // 所有异常抛出
Connectionconn = null ; // 数据库连接
PreparedStatementpstmt = null ; // 数据库操作
StringkeyWord = "鲍" ; // 设置查询关键字
ResultSetrs = null ; // 接收查询结果
Stringsql = "SELECT id,name,password,age,sex,birthday " +
"FROM user" ;
Class.forName(DBDRIVER); // 加载驱动程序
conn= DriverManager.getConnection(DBURL,DBUSER,DBPASS) ;
pstmt= conn.prepareStatement(sql) ; // 实例化PreapredStatement对象
rs= pstmt.executeQuery() ; // 执行查询
while(rs.next()){
intid = rs.getInt(1) ;
Stringname = rs.getString(2) ;
Stringpass = rs.getString(3) ;
intage = rs.getInt(4) ;
Stringsex = rs.getString(5) ;
java.util.Dated = rs.getDate(6) ;
System.out.print("编号:" + id + ";") ;
System.out.print("姓名:" + name + ";") ;
System.out.print("密码:" + pass + ";") ;
System.out.print("年龄:" + age + ";") ;
System.out.print("性别:" + sex + ";") ;
System.out.println("生日:" + d + ";") ;
System.out.println("-------------------------");
}
rs.close();
pstmt.close();
conn.close(); // 数据库关闭
}
};
9、JDBC删除代码
import java.sql.Connection ;
import java.sql.DriverManager ;
import java.sql.Statement ;
public class DeleteDemo{
//定义MySQL的数据库驱动程序
publicstatic final String DBDRIVER = "org.gjt.mm.mysql.Driver" ;
//定义MySQL数据库的连接地址
publicstatic final String DBURL = "jdbc:mysql://localhost:3306/OLED" ;
//MySQL数据库的连接用户名
publicstatic final String DBUSER = "root" ;
//MySQL数据库的连接密码
publicstatic final String DBPASS = "mysqladmin" ;
publicstatic void main(String args[]) throws Exception { // 所有的异常抛出
Connectionconn = null ; // 数据库连接
Statementstmt = null ; // 数据库操作
intid = 2 ;
Class.forName(DBDRIVER); // 加载驱动程序
Stringsql = "DELETE FROM user WHERE id="+id ;
conn= DriverManager.getConnection(DBURL,DBUSER,DBPASS) ;
stmt= conn.createStatement() ; // 实例化Statement对象
stmt.executeUpdate(sql); // 执行数据库更新操作
stmt.close(); // 关闭操作
conn.close(); // 数据库关闭
}
};