概念:JDBC是用JAVA操作数据库的方法,对表的操作属于基本操作
用途:JDBC 可做三件事:与数据库建立连接、发送 操作数据库的语句并处理结果
好处:1,,将Java语言和JDBC结合起来使程序员不必为不同的平台编写不同的应用程序,只须写一遍程序就可以让它在任何平台上运行,这也是Java语言“编写一次,处处运行”的优势,其次它增进了访问数据的效率和快捷程度
2, Java 和 JDBC 的结合,使信息传播变得容易和经济。企业可继续使用它们安装好的数据库,并能便捷地存取信息,即使这些信息是储存在不同数据库管理系统上。新程序的开发期很短。安装和版本控制将大为简化。程序员可只编写一遍应用程序或只更新一次,然后将它放到服务器上,随后任何人就都可得到最新版本的应用程序。对于商务上的销售信息服务, Java 和JDBC 可为外部客户提供获取信息更新的更好方法。
JDBC方法:
1,装载数据库驱动
2,定义连接字符串
3,获得字符串的连接
4,获得数据库的连接
5.定义调用的过程的sql语句
6.,获得编译对象
7.执行
具体如下:
1--3:
package JDB; import java.sql.Connection; import java.sql.DriverManager; /** * 单例创建数据库连接对象 * @author Administrator * */ public class DBU { private static Connection conn=null; //私有化构造方法 private DBU(){ } public static Connection getconn(){ if(conn!=null){ return conn;} try{ //1,装载驱动 Class.forName("oracle.jdbc.driver.OracleDriver"); // 2.定义连接字符串 String url = "jdbc:oracle:thin:@172.19.171.243:1521:MYORACLE"; //3.获得字符串的连接 conn=DriverManager.getConnection(url, "scott", "scott"); return conn; }catch(Exception ef){ ef.printStackTrace(); } return null; } }
4-7:
package JDB; import java.sql.CallableStatement; import java.sql.Connection; import java.sql.ResultSet; import java.sql.Statement; /** * 使用jdbc对表的增删改查 * 过程,块, * @author Administrator * */ public class pro { public static void main(String[] args) { pro p = new pro(); //p.pro_upname(3, "八条"); 改 //p.pro_add(6, "男", 18, "红中"); 增加 //p.pro_drop(1); p.select(3); } public void pro_upname(int id,String newName){ try{ //1,获得数据库的连接 Connection conn =DBU.getconn(); //调用sql String sql ="{call pro_2(?,?)}"; //2,获得数据库编译对象 CallableStatement stm =conn.prepareCall(sql); //赋值: stm.setInt(1,id); stm.setString(2,newName); //执行过程 stm.execute(); }catch(Exception ee){ ee.printStackTrace(); } } //增加数据的 public void pro_add(int id,String sax,int age,String name){ try{ //1,获得数据库的连接 Connection conn=DBU.getconn(); //2,定义调用的过程的sql语句 String sql = "{call pro_3(?,?,?,?)}"; //3,获得编译对象 CallableStatement cstm =conn.prepareCall(sql); //4,给?赋值 cstm.setInt(1, id); cstm.setObject(2, sax); cstm.setInt(3, age); cstm.setObject(4, name); //5,执行结果 cstm.execute(); }catch(Exception ds){ ds.printStackTrace(); } } //删除的 public void pro_drop(int id){ try{ //1,获得数据库的连接 Connection conn= DBU.getconn(); //2,定义sql String sql ="{call pro_delete(?)}"; //3,获得编译对象 CallableStatement ps = conn.prepareCall(sql); //4,给问号赋值 ps.setInt(1, id); //5,开始执行 ps.execute(); }catch(Exception e){ System.out.println("这里有问题"); } } //写一个查询的方法 public void select(int id){ try{ //1,获得数据库连接 Connection conn=DBU.getconn(); //2,定义sql String asa = "{call pro_select(?,?,?)}"; //3,获得编译对象 CallableStatement psd = conn.prepareCall(asa); //4,赋值 psd.setInt(1, id); // psd.setString(2, name); // psd.setInt(3, age);java.sql.Types.VARCHAR psd.registerOutParameter(2, java.sql.Types.VARCHAR); psd.registerOutParameter(3, java.sql.Types.VARCHAR); //执行 psd.execute(); // 获得输出参数的数据 String Name = (String) psd.getObject(2); String age = (String) psd.getObject(3); System.out.println("姓名:" + Name + " 年龄:" + age); }catch(Exception er){ er.printStackTrace(); } } }
数据库的删除和查询的过程:
--写一个删除的过程 指定ID的 create or replace procedure pro_delete(v_id userlog.id%type) is begin delete from userlog where Id=v_id; end; --写一个查询 名字和 年龄的过程 create or replace procedure pro_select(v_id in userlog.id%type,v_name out userlog.name%type,v_age out userlog.age%type) is begin select name ,age into v_name,v_age from userlog where Id=v_id; end;
在调用过程的时候,做总结:
1,在ecilpse中输出查询的结果时,在oracle中的过程的形式参数中,形参要表明in 或 out .
2,在给问号赋值的时候,如果不知道转成什么数据类型,就写object。
3,在你书写的SQL语句后,在写上System.out.println("你的SQL语句");用来查看你写的是否正确
4,数据库中定义类型是,使用 表名.字段名%type.是很方便的
5,数据库里的 show errors; 真不错
问题:
经过这次,清楚了Java连接数据库的基本操作,问题:呵,有时就忘了sql语句怎么写,还有就是不怎么会写数据库里面的过程,块。
相关推荐
jdbc总结jdbc总结 jdbc总结 jdbc总结 jdbc总结
java_JDBC数据库操作代码总结大全
JDBC:java database connectivity SUN公司提供的一套操作数据库的标准规范。
1. 加载驱动Class.forName("oracle.jdbc.driver.OracleDriver");//相当于我们的第三方工具pl/sql 2. 通过驱动获取连接对象Connection con=DriverManager.getConnection(“jdbc:oracle:thin:@10.1.12.138:1521:orcl",...
Hibernate、TopLink等OR Mapping操作数据库的技术都是建立JDBC技术之上的,实际来说,他们的性能和JDBC是有很大差距的,但反过来说,如果JDBC用不好,还不如hibernate呢。暂且不说这些孰优孰劣的话了,再次主要是对...
JDBC部分 精华总结JDBC部分 精华总结
各种数据库的连接文档JDBC连接数据库经验总结
JDBC中操作Blob、Clob等对象 实例详细JDBC中操作Blob、Clob等对象 实例详细JDBC中操作Blob、Clob等对象 实例详细JDBC中操作Blob、Clob等对象 实例详细JDBC中操作Blob、Clob等对象 实例详细JDBC中操作Blob、Clob等...
PI JDBC Communication Channel总结(安装驱动) SAP PI 安装Jar详细步骤
jdbc 操作oracle blob数据jdbc 操作oracle blob数据jdbc 操作oracle blob数据jdbc 操作oracle blob数据jdbc 操作oracle blob数据jdbc 操作oracle blob数据jdbc 操作oracle blob数据jdbc 操作oracle blob数据jdbc ...
经典的JDBC数据库操作类,数据库信息采用propertise文件配置,所以是跨数据库的!语句经典!初学者必备!
jdbc操作步骤jdbc操作步骤jdbc操作步骤jdbc操作步骤jdbc操作步骤jdbc操作步骤jdbc操作步骤
操作jabc的金典总结 总体看待jdbc
Java jdbc操作mysql Java jdbc操作mysql
使用JDBC操作数据库
简单易用的数据库封装操作,包含数据库连接池的基本实现,数据库连接可重用,所有的操作都脱离源生JDBC操作,开发人员只需要熟悉Java集合的用法,会写Sql即可轻松的使用该封装好的JDBC API写出合理的代码。...
在学习Java的过程中,面对用Java操作数据库的时候,难免会遇见对于数据库连不上的问题,这是本人在学习过程中的一些总结,专门针对Java操作数据库的内容,包括jdbc的链接,分页,MySQL的存储过程等,仅供参考,不...
非常有用的jdbc的操作数据库的样例 博文链接:https://shangdiyefankun.iteye.com/blog/128956
jdbc资源总结
JDBC基本操作,及批处理操作