问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

在java中怎么对数据库的数据进行操作

发布网友 发布时间:2022-04-26 23:32

我来回答

2个回答

懂视网 时间:2022-04-08 07:07

 数据库访问几乎每一个稍微成型的程序都要用到的知识,怎么高效的访问数据库也是我们学习的一个重点,今天的任务就是总结java访问数据库的方法和有关API,java访问数据库主要用的方法是JDBC,它是java语言中用来规范客户端程序如何来访问数据库的应用程序接口,提供了诸如查询和更新数据库中数据的方法,下面我们就具体来总结一下JDBC

一:Java访问数据库的具体步骤:

1 加载(注册)数据库 

 驱动加载就是把各个数据库提供的访问数据库的API加载到我们程序进来,加载JDBC驱动,并将其注册到DriverManager中,每一种数据库提供的数据库驱动不一样,加载驱动时要把jar包添加到lib文件夹下,下面看一下一些主流数据库的JDBC驱动加裁注册的代码: 

//Oracle8/8i/9iO数据库(thin模式) 

Class.forName("oracle.jdbc.driver.OracleDriver").newInstance(); 

//Sql Server7.0/2000数据库   Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver"); 

//Sql Server2005/2008数据库   Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); 

//DB2数据库 

Class.froName("com.ibm.db2.jdbc.app.DB2Driver").newInstance();  

//MySQL数据库  Class.forName("com.mysql.jdbc.Driver").newInstance(); 

//PostgreSQL数据库 Class.forName("com.postgresql.jdbc.Driver").newInstance();

2 建立链接   

建立数据库之间的连接是访问数据库的必要条件,就像南水北调调水一样,要想调水首先由把沟通的河流打通。建立连接对于不同数据库也是不一样的,下面看一下一些主流数据库建立数据库连接,取得Connection对象的不同方式:

 //Oracle8/8i/9i数据库(thin模式) 

  String url="jdbc:oracle:thin:@localhost:1521:orcl"; 

  String user="scott"; 

  String password="tiger"; 

  Connection conn=DriverManager.getConnection(url,user,password); 

  

  //Sql Server7.0/2000/2005/2008数据库 

  String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs"; 

  String user="sa"; 

  String password=""; 

  Connection conn=DriverManager.getConnection(url,user,password); 

  

  //DB2数据库 

  String url="jdbc:db2://localhost:5000/sample"; 

  String user="amdin" 

  String password=-""; 

  Connection conn=DriverManager.getConnection(url,user,password); 

  

//MySQL数据库 

String url="jdbc:mysql://localhost:3306/testDB?user=root&password=root&useUnicode=true&characterEncoding=gb2312"; 

Connection conn=DriverManager.getConnection(url); 

 

 

  //PostgreSQL数据库 

  String url="jdbc:postgresql://localhost:5432/postgres"; 

  String user="postgres" 

  String password="postgres"; 

  Connection conn=DriverManager.getConnection(url,user,password); 

 

3. 执行SQL语句  

数据库连接建立好之后,接下来就是一些准备工作和执行sql语句了,准备工作要做的就是建立Statement对象PreparedStatement对象,例如:

 //建立Statement对象 

 Statement stmt=conn.createStatement(); 

 //建立PreparedStatement对象 

 String sql="select * from user where userName=? and password=?"; 

  PreparedStatement pstmt=Conn.prepareStatement(sql); 

  pstmt.setString(1,"admin"); 

  pstmt.setString(2,"liubin"); 

做好准备工作之后就可以执行sql语句了,执行sql语句:

String sql="select * from users"; 

ResultSet rs=stmt.executeQuery(sql); 

//执行动态SQL查询 

ResultSet rs=pstmt.executeQuery(); 

//执行insert update delete等语句,先定义sql 

stmt.executeUpdate(sql); 

4 处理结果集  

 访问结果记录集ResultSet对象。例如: 

  while(rs.next) 

  { 

  out.println("你的第一个字段内容为:"+rs.getString("Name")); 

  out.println("你的第二个字段内容为:"+rs.getString(2)); 

  } 

5 关闭数据库 

 依次将ResultSet、Statement、PreparedStatement、Connection对象关     闭,释放所占用的资源.例如: 

  rs.close(); 

  stmt.clost(); 

  pstmt.close(); 

  con.close(); 

二:JDBC事务

什么是事务:

首先,说说什么事务。我认为事务,就是一组操作数据库的动作集合。

事务是现代数据库理论中的核心概念之一。如果一组处理步骤或者全部发生或者一步也不执行,我们称该组处理步骤为一个事务。当所有的步骤像一个操 作一样被完整地执行,我们称该事务被提交。由于其中的一部分或多步执行失败,导致没有步骤被提交,则事务必须回滚到最初的系统状态。

事务必须服从ISO/IEC所制定的ACID原则。ACID是原子性(atomicity)、一致性(consistency)、隔离性 (isolation)和持久性(durability)的缩写。事务的原子性表示事务执行过程中的任何失败都将导致事务所做的任何修改失效。一致性表示 当事务执行失败时,所有被该事务影响的数据都应该恢复到事务执行前的状态。隔离性表示在事务执行过程中对数据的修改,在事务提交之前对其他事务不可见。持 久性表示当系统或介质发生故障时,确保已提交事务的更新不能丢失。持久性通过数据库备份和恢复来保证。

JDBC 事务是用 Connection 对象控制的。JDBC Connection 接口( java.sql.Connection )提供了两种事务模式:自动提交和手工提交。 java.sql.Connection 提供了以下控制事务的方法: 
public void setAutoCommit(boolean) 
public boolean getAutoCommit() 
public void commit() 
public void rollback() 
使用 JDBC 事务界定时,您可以将多个 SQL 语句结合到一个事务中。JDBC 事务的一个缺点是事务的范围局限于一个数据库连接。一个 JDBC 事务不能跨越多个数据库。

【转载】java数据库操作

标签:

热心网友 时间:2022-04-08 04:15

首先,你要先有一个数据库。
然后下在你的数据库对应的JDBC驱动。
将驱动的jar包放到项目的classpath。
然后就可以编写程序来连接数据库,并进行保存和查询操作了。
保存数据通过执行INSERT INTO语句
查询数据通过SELECT语句

总之,如果是新手,需要了解的只是挺多的。先看看JDBC的内容吧。

如果不想了解太多细节,可以直接使用Hibernate框架,不过第一次用可能会觉得配置比较繁琐。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
被培训机构骗了,他们耍无赖不退钱,如果我把他公司砸到他们骗走我的钱... 木地板的类型以及可以使用的拖把 冯小刚脸有红斑!可以去东北步行街特产店买百草之王人参!吃段时间就好... Empires & Allies – 社交网络 UID 是什么?我如何找到它? Empires & Allies – Regarder pour gagner (RG) – FAQ Empires & Allies – 如何建造并升级基地营地? 男领导是喜欢这个女人吗? 地雷战纪念馆的主要展览 我想问一下打火机爆炸能伤人吗 万能焊条可以用打火机烧吗? "拔苗助长"歇后语的下一句? java怎样用jsp实现对数据库的增删改查操作 急于求成的歇后语 用java做界面连接oracle数据库实现增删改查功能,具体步骤怎么做?_百度... 如何用java实现对mysql进行增删改查 对数据库实现增删改查的Java程序 java连接数据库实现增删改查 求一个JAVA应用系统能实现对数据库数据的增删改查就可以!谢谢 只有手机串号能查出公安能查出原机主吗 为什么手机内的照片时间久了会模糊不清? 苹果手机屏幕上出现GPRS标志怎么关掉? iphone5 如何关闭GPRS上网功能 苹果5S总是显示GPRS怎么关掉啊? 苹果手机用的是中国移动号码GPRS不用时怎样关闭网络连接 按摩胸部真的能变大吗 胸会越来越揉越大吗? 严肃解释:胸部真的会越揉越大吗 怎样能找个胸大的女朋友? 我20岁,大学生,看到很*的女生都受不了,怎么办,还会有生理反应,想控制自己控制不住 我女朋友今年23胸挺大的,可是有些下垂了,要怎么办,怎么样可以让他回来呢? 用拔苗助长__急于求成写出一句关于心情的歇后语 表示着急的歇后语 怎么用java向数据库中添加和删除数据 形容性急的歇后语~ java io 简单实现对数据的增删改查 java对pl sql数据库查询,增加,修改,删除操作 求北师大版高中英语必修一课本【电子版的】百度云下载地址,谢谢啦^V^ 形容着急的歇后语,求回答! 如何通过java实现对sqlite数据库的增删改查 在JAVA中对数据库进行增删改查 比如这些 String sql = "insert into u... 好了伤疤忘了痛的歌词 创建java的类实现对数据库的增删改查 哪位好心人帮妹妹写一下这首歌的歌词 谢谢 《好了伤疤忘了疼》 人教版高一英语必修1的英语书上第7页的2题,写给小东那个回信,怎么写? java怎样在控制台对数据库字段进行增删改查 不能好了伤疤,就忘了未愈合的痛歌名是什么 求歌词:愈好了伤疤忘了疼 一物降一物的前一句是什么啊? 这本什么书啊?高一英语必修一的 比如做思想工作时不能急于求成,要慢慢来的成语或、谚语、或格言、歇后语