博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
jdbc,链接调用数据库的方法——例题
阅读量:6088 次
发布时间:2019-06-20

本文共 2503 字,大约阅读时间需要 8 分钟。

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();		}	}}

  

转载于:https://www.cnblogs.com/zhangnaitao/p/5986670.html

你可能感兴趣的文章
Project:如何分析项目中的资源分配情况
查看>>
HDU 4803 Poor Warehouse Keeper (贪心+避开精度)
查看>>
小错误汇总
查看>>
Spring源码系列 — Envoriment组件
查看>>
java正则表达式去除html标签,Java中正则表达式去除html标签
查看>>
使用Cobbler批量部署Linux操作系统
查看>>
zabbix企业应用之服务端与客户端的安装
查看>>
实例讲解遗传算法——基于遗传算法的自动组卷系统【理论篇】
查看>>
无法在web服务器上启动调试。调试失败,因为没有启用集成windows身份验证
查看>>
Bat相关的项目应用
查看>>
Django为数据库的ORM写测试例(TestCase)
查看>>
web.xml中的contextConfigLocation在spring中的作用
查看>>
NYOJ-107 A Famous ICPC Team
查看>>
与众不同 windows phone (44) - 8.0 位置和地图
查看>>
Visual Studio Code 使用 ESLint 增强代码风格检查
查看>>
iOS设备中的推送(二):证书
查看>>
敏捷 - #3 原则:经常提供工作软件 ( #3 Agile - Principle)
查看>>
数据结构与算法:二分查找
查看>>
使用思科模拟器Packet Tracer与GNS3配置IPv6隧道
查看>>
Linux设备驱动之Ioctl控制【转】
查看>>