时间:2021-07-01 10:21:17 帮助过:23人阅读
package com.jdbcke; import java.sql.Connection; import java.sql.DatabaseMetaData; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.ResultSetMetaData; import java.sql.SQLException; import java.sql.Statement; import javax.swing.plaf.synth.SynthStyle; public class ke1 { public static void main(String[] args) { try { //访问数据库 //1.加载驱动;加载数据库提供的驱动类 Class.forName("oracle.jdbc.driver.OracleDriver"); //2.获取数据库连接,通过java的驱动管理器 //url——数据库地址;user——用户名;password-密码 //不同的数据库地址写法不一样 Connection conn= DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:orcltao", "test0816","123456"); System.out.println("连接成功"); //3.获得操作数据库的声明Statement Statement st=conn.createStatement(); //4.操作数据,增删改查 //执行操作,增 int i =st.executeUpdate("insert into student (sno,sname,ssex)"+"values(‘1517‘,‘小军‘,‘男‘)"); System.out.println("添加数据成功,返回值="+i);//返回值的意思:该操作影响的数据记录条数。 //改 // int i=st.executeUpdate("update student set ssex=‘男‘ where ssex=‘1‘"); // System.out.println("添加数据成功,返回值="+i); //查ResultSet数据结果集 ResultSet rs= st.executeQuery("select * from student"); //遍历结果集 while(rs.next()) //next() 判断是否存在下一条记录,如果存在,移动指针到一下条记录数据 { //读取数据 String sno=rs.getString("sno"); String sname=rs.getString("sname"); String ssex=rs.getString("ssex"); System.out.println("sno="+sno+"sname="+sname+"ssex="+ssex); } //3.4创建声明与执行PreparedStatement // String sql="select * from kaihubiao where yhcard=? and cardmm=?"; // PreparedStatement ps= conn.prepareStatement(sql); // ps.setString(1, cardid); // ps.setString(2, mm); // //执行 // ResultSet rs= ps.executeQuery(); // //遍历 // rtn=rs.next();//如果有数据就验证通过 //补充知识 //调用存储过程 // CallableStatement cs=conn.prepareCall("{call 存储过程名(?,?)}"); //获取与数据库相关的信息 DatabaseMetaData dm= conn.getMetaData(); System.out.println("URL="+dm.getURL()); System.out.println("名称="+dm.getUserName()); System.out.println("产品名称="+dm.getDatabaseProductName()); //结果集的元数据 ——可以获得数据库表中的列明 ResultSetMetaData rsmd =rs.getMetaData(); System.out.println("列的数量"+rsmd.getColumnCount()); System.out.println("列的列名"+rsmd.getColumnName(1)); System.out.println("列的数量"+rsmd.getColumnCount()); rs.close(); //关闭声明,释放资源 st.close(); //关闭数据库连接 conn.close(); } catch (ClassNotFoundException | SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
jdbc,链接调用数据库的方法——例题
标签:getc 释放 blog 数据 ati resultset 添加 catch 地址