在java编程开发中,数据库的开发是重头戏。
MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品;
SQL Server是由Microsoft开发和推广的关系数据库管理系统(DBMS)。
Jar包下载
java数据库的连接需要依赖外部jar包,所以需要下载后进行:构建路径->配置构建路径->库->添加JAR->应用->确定
SQLserver:
https://blog-static.cnblogs.com/files/dongxiaodong/sqlserverdb.zip
MySQL:
https://blog-static.cnblogs.com/files/dongxiaodong/mysqldb.zip
连接储备
连接数据库最重要的地方就是确定其数据库驱动和URL
SQLserver:
String forn="com.microsoft.sqlserver.jdbc.SQLServerDriver";//数据库驱动
String url = "jdbc:sqlserver://172_16_0_6:1433;databaseName=mydbname ";//连接的url
MySQL:
String forn="com.mysql.jdbc.Driver";//数据库驱动
String url = "jdbc:mysql://localhost:3306/mydbname ";//连接的url
数据库连接
导入模块
import java.sql.*
创建类属性
private Connection ct=null;
private Statement st=null;
数据库连接函数
private void Db(){
String forn="com.mysql.jdbc.Driver";//数据库驱动
String url = "jdbc:mysql://localhost:3306/db_library";//连接的url
String user="root"; //用户名
String password="root";//密码
try {
Class.forName(forn);//注册、加载特定的驱动程序
} catch (ClassNotFoundException e) {
JOptionPane.showMessageDialog(null,"加载数据库失败01");
System.exit(0);//关闭整个应用
e.printStackTrace();
}
try {
ct=DriverManager.getConnection(url,user,password);//创建连接,创建连接Connection对象
} catch (SQLException e1) {
JOptionPane.showMessageDialog(null,"加载数据库失败02"+e1.toString());
System.exit(0);//关闭整个应用
e1.printStackTrace();
}
try {
st=ct.createStatement();//创建会话对象,用Connection对象生成Statement对象
} catch (SQLException e3) {
JOptionPane.showMessageDialog(null,"加载数据库失败03");
System.exit(0);//关闭整个应用
e3.printStackTrace();
}
JOptionPane.showMessageDialog(null,"连接数据库成功了");
}
数据库基本操作
查询操作:
获取结果第一条
try {
//执行SQL语句
ResultSet rex = st.executeQuery("select *from tb_books where b_id=1");
//判断是否查询到值
if(rex.next()){
String ss=rex.getString("字段名");
JOptionPane.showMessageDialog(null,"字段数据为:"+ss);
}
} catch (SQLException e1) {
e1.printStackTrace();
}
获取全部结果:
try {
//执行SQL语句
ResultSet rex = st.executeQuery("select *from tb_books where b_id=1");
//判断是否查询到值
while(rex.next()){
String ss=rex.getString("字段名");
JOptionPane.showMessageDialog(null,"字段数据为:"+ss);
}
} catch (SQLException e1) {
e1.printStackTrace();
}
更新操作
executeUpdate可以执行插入、更新、删除的SQL语句,并返回影响行数
try {
//设置更新的SQL语句
String sql2="update tb_test set text1='123',text2='1234' where id='1'";
int ii = st.executeUpdate(sql2);//返回影响行数
JOptionPane.showConfirmDialog(null,"影响行数为:"+ii);
} catch (SQLException e1) {
e1.printStackTrace();
}