如何使用java对oracle数据库进行增删查改

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使用java对oracle数据库进行增删查改相关的知识,希望对你有一定的参考价值。

    创建数据库了连接

    编写数据库操作语句

    获取结果


    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.sql.Statement;
    import java.util.List;

    import javax.servlet.jsp.jstl.sql.Result;
    import javax.servlet.jsp.jstl.sql.ResultSupport;

    public class BaseDao
        private static String driver = "oracle.jdbc.driver.OracleDriver";
        private static String url = "jdbc:oracle:thin:@localhost:1521:orcl";
        private static String user = "s2";
        private static String pwd = "s2";

        public static Connection getcon()
            Connection c = null;
            try
                Class.forName(driver);
                c = DriverManager.getConnection(url, user, pwd);
             catch (ClassNotFoundException e)
                // TODO Auto-generated catch block
                e.printStackTrace();
             catch (SQLException e)
                // TODO Auto-generated catch block
                e.printStackTrace();
            
            return c;
        
        public static int executeUpdate(String sql,Object...param)
            Connection c=getcon();
            PreparedStatement p=null;
        
            int num=0;
            try
                
                p=c.prepareStatement(sql);
                if (param!=null)
                    for (int i = 0; i < param.length; i++)
                        p.setObject(i+1, param[i]);
                    
                
                num=p.executeUpdate();
             catch (SQLException e)
                // TODO Auto-generated catch block
                e.printStackTrace();
            finally
                try
                    p.close();
                    c.close();
                 catch (SQLException e)
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                
                
            
            return num;
        
        public static Result executeQuery(String sql,Object...param)
            Connection c=getcon();
            PreparedStatement p=null;
            ResultSet rs=null;
            Result r=null;
            try
                p=c.prepareStatement(sql);
                if (param!=null)
                    for (int i = 0; i < param.length; i++)
                        p.setObject(i+1, param[i]);
                    
                
                rs=p.executeQuery();
                r=ResultSupport.toResult(rs);
            catch (SQLException e)
                // TODO Auto-generated catch block
                e.printStackTrace();
            finally
                try
                    rs.close();
                    p.close();
                    c.close();
                 catch (SQLException e)
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                
                
            
            return r;
        



参考技术A 创建数据库

选择开始菜单中→程序→【Management SQL Server 2008】→【SQL Server Management Studio】命令,打开【SQL Server Management Studio】窗口,并使用Windows或 SQL Server身份验证建立连接。

在【对象资源管理器】窗口中展开服务器,然后选择【数据库】节点

右键单击【数据库】节点,从弹出来的快捷菜单中选择【新建数据库】命令。

执行上述操作后,会弹出【新建数据库】对话框。在对话框、左侧有3个选项,分别是【常规】、【选项】和【文件组】。完成这三个选项中的设置会后,就完成了数据库的创建工作,

在【数据库名称】文本框中输入要新建数据库的名称。例如,这里以“新建的数据库”。

在【所有者】文本框中输入新建数据库的所有者,如sa。根据数据库的使用情况,选择启用或者禁用【使用全文索引】复选框。

在【数据库文件】列表中包括两行,一行是数据库文件,而另一行是日记文件。通过单击下面的【添加】、【删除】按钮添加或删除数据库文件。

切换到【选项页】、在这里可以设置数据库的排序规则、恢复模式、兼容级别和其他属性。

切换到【文件组】页,在这里可以添加或删除文件组。

完成以上操作后,单击【确定】按钮关闭【新建数据库】对话框。至此“新建的数据”数据库创建成功。新建的数据库可以再【对象资源管理器】窗口看到。本回答被提问者和网友采纳
参考技术B 下面是一个java 操作orcal数据库的例子,你可以参考一下:
import java.sql.*;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class BaseDao
// private static final String DRIVER="com.microsoft.sqlserver.jdbc.SQLServerDriver";
// private static final String URL="jdbc:sqlserver://localhost:1433;databaseName=orcl";
public static final String DRIVER = "oracle.jdbc.driver.OracleDriver";
public static final String URL = "jdbc:oracle:thin:@localhost:1521:ORCL";
private static final String USERNAME="sa"; //你需要用自己的用户名
private static final String PASSWORD="sa"; //自己的密码
Connection conn=null;
PreparedStatement pst=null;
ResultSet rs=null;

public Connection getConnection()
try
Class.forName(DRIVER);
try
conn=DriverManager.getConnection(URL, USERNAME, PASSWORD);
catch (SQLException e)
e.printStackTrace();

catch (ClassNotFoundException e)
e.printStackTrace();


return conn;

public void close()
if(rs!=null)
try
rs.close();
catch (SQLException e)
e.printStackTrace();


if(pst!=null)
try
rs.close();
catch (SQLException e)
e.printStackTrace();


if(conn!=null)
try
rs.close();
catch (SQLException e)
e.printStackTrace();



public void setParams(Object...params)
if(null!=params)
for(int i=0;i<params.length;i++)
try
pst.setObject(i+1, params[i]);
catch (SQLException e)
e.printStackTrace();




public int executeUpdate(String sql,Object...params)
int result=-1;
conn=getConnection();
try
pst=conn.prepareStatement(sql);
setParams(params);
result=pst.executeUpdate();
catch (SQLException e)
e.printStackTrace();

return result;

public List<Map<String, Object>> executeQuery(String sql, Object... params)
List<Map<String, Object>> result = new ArrayList<Map<String, Object>>(); conn = getConnection();
try
pst = conn.prepareStatement(sql);
setParams(params);
rs = pst.executeQuery();
ResultSetMetaData rsmd = rs.getMetaData();
int columnCount = rsmd.getColumnCount();
Map<String, Object> row = null;
while (rs.next())
row = new HashMap<String, Object>();
for (int i = 0; i < columnCount; i++)
String columnName = rsmd.getColumnName(i + 1);
Object value = rs.getObject(columnName);
row.put(columnName.toLowerCase(), value);

result.add(row);

catch (SQLException e)
e.printStackTrace();
finally
close();

return result;

public int execute(String sql, Object... params)
int result = -1;
conn = getConnection();
try
pst = conn.prepareStatement(sql);
setParams(pst, params); result = pst.executeUpdate();
catch (SQLException e)
e.printStackTrace();
finally
close();

return result;
public ResultSet query(String sql, Object... params)
conn = getConnection();
try
pst = conn.prepareStatement(sql);
setParams(pst, params);
rs = pst.executeQuery();
catch (SQLException e)
e.printStackTrace();

return rs;

参考技术C

最基本的可以使用JDBC操作,一般在service层对数据库进行增删改查。


具体步骤一般如下:


    添加对应数据库的驱动包。

    导入DBUtils工具包,也可以自己手动写一个DBUtils,用于数据库的连接管理。

    编写service层来操作数据库。


JDBC网上有很多资料,可以边查看边练习。

参考技术D 使用JDBC连接数据库,然后通过Dao层,然后输入sql字符串和参数,去数据库查询,一般会通过持久层缓存一条记录,如果返回多条记录一般通过List来保存,然后将其内容提供给前台页面

nodejs连接mysql并进行简单的增删查改

最近在入门nodejs,正好学习到了如何使用nodejs进行数据库的连接,觉得比较重要,便写一下随笔,简单地记录一下

使用在安装好node之后,我们可以使用npm命令,在项目的根目录,安装nodejs中的mysql模块

npm  install mysql

在连接数据库之前,要先引入nodejs连接处理mysql的模块

var mysql = require(‘mysql‘);

类似php连接mysql的方式,编写连接代码

//使用nodejs处理mysql的模块,使用创建连接方法,创建与mysql的连接

var conn = mysql.createConnection({
    host: ‘localhost‘,    //服务器端口
    user: ‘root‘,           //数据库用户名
    password: ‘‘,         //密码
    database:‘nodejs‘,   //指定连接的数据库
    port: 3306            //服务器的端口号
});

获取数据库信息之后,开始执行数据库连接

conn.connect();

接下来是简单的数据库的增删查改

数据库的数据表原来是这样的

技术分享

对数据表中的数据进行操作

//查询user表中    用户名为张三的用户,并打印结果
conn.query(‘SELECT * from user where username="zhangsan"‘, function(err, result) {
    if (err) throw err;
    console.log(result);
})

在控制台输出结果:

技术分享

//新增  向user数据表,新增一个用户
conn.query(‘insert into user (username,password) values("lisi","123456")‘, function(err, result) {
    if (err) throw err;
    console.log(result);
})

在控制台输出结果:

技术分享

数据库显示:

可以看到,数据库中多了一个叫lisi的用户,但是没有id

技术分享

对数据进行删除:

//删除    删除user表中  用户名为xiaoming的用户
conn.query(‘delete from user where username="xiaoming"‘, function(err, result) {
    if (err) throw err;
    console.log(result);
})

在控制台输出:

技术分享

数据库的显示:

在数据表中,用户名为xiaoming的用户已经被删除

技术分享

//修改数据   修改用户名为lisi的用户信息
conn.query(‘update user set id="3" where username="lisi"‘,function(err,result){
    if (err) {throw err};
    console.log("修改数据成功");
})

在控制台输出:

技术分享

在数据库中的显示:

在user表中我们可以看到,用户名为lisi的用户,新增加了一个id的字段

技术分享

 

以上步骤,就是nodejs对mysql中的数据表中的信息,进行增删查改的简单操作,慢慢深入的学习,多多实战希望能提高处理数据的能力,希望能够收获更多,也希望看到文章的童鞋,能够多多指教

 

以上是关于如何使用java对oracle数据库进行增删查改的主要内容,如果未能解决你的问题,请参考以下文章

如何在JSP页面中实现对数据库的增删查改?

java实现简单的数据库的增删查改,并布局交互界面

Python对MySQL进行增删查改

[Hibernate] 基本增删查改

mybatis实现简单的增删查改

php怎么对文件内容进行增删查改?