`
竹临仙
  • 浏览: 37855 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
社区版块
存档分类
最新评论

oracle 连接... 修改.....查询

阅读更多

package com.Utils;
import java.sql.Connection;
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 java.sql.Timestamp;
import java.util.ArrayList;
import java.util.List;

public class DBUtils {
static {
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}

private DBUtils() {
}

public static Connection getConnection() {
String url = "jdbc:oracle:thin:@localhost:1521:orcl";
String dbname = "scott";
String dbpwd = "tiger";
try {
return DriverManager.getConnection(url, dbname, dbpwd);
} catch (SQLException e) {
e.printStackTrace();
return null;
}
}
public static boolean update(String sql, Object[] param) {
Connection conn = null;
PreparedStatement stmt = null;
int rs = 0;
try {
conn = getConnection();
stmt = conn.prepareStatement(sql);
pstmt(stmt, param);
rs = stmt.executeUpdate();
} catch (SQLException e) {
e.printStackTrace();
} finally {
close(null, stmt, conn);
}
return rs != 0;
}
private static void pstmt(PreparedStatement stmt, Object[] param) {
if (param != null) {
try {
for (int i = 0; i < param.length; i++) {
if (param[i].getClass() == java.lang.Integer.class) {
stmt.setInt(i + 1, (Integer) param[i]);
} else if (param[i].getClass() == java.lang.String.class) {
stmt.setString(i + 1, (String) param[i]);
} else if (param[i].getClass() == java.util.Date.class) {
stmt.setTimestamp(i + 1,new Timestamp(((java.util.Date) param[i]).getTime()));
}
}
} catch (SQLException e) {
e.printStackTrace();
}

}
}


public static List<String[]> query(String sql, Object[] param) {
Connection conn = null;
PreparedStatement stmt = null;
ResultSet rs = null;
ResultSetMetaData meta = null;// 列名,列数量,列类型,,,
List<String[]> lists = new ArrayList<String[]>();

try {
conn = getConnection();
stmt = conn.prepareStatement(sql);
pstmt(stmt, param);
rs = stmt.executeQuery();

meta = stmt.getMetaData();
int count = meta.getColumnCount();// 一共查询几列...
while (rs.next()) {// 一行..
String[] arr = new String[count];// 一行放在一个String 数组当中...
for (int i = 1; i <= count; i++) {// 每一个列..放在数组....
arr[i - 1] = rs.getString(i);
}
lists.add(arr);// 再把数且放在list
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
close(rs, stmt, conn);

}
return lists;// 返回列..
}
public static void close(ResultSet rs, Statement stmt, Connection conn) {
if (rs != null) {
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if (stmt != null) {
try {
stmt.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if (conn != null) {
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
分享到:
评论

相关推荐

    Oracle 11.2.0.4 客户端安装包for Linux. x64

    一旦设置完成,用户就可以使用SQL*Plus进行查询,开发者则可以利用SDK构建连接Oracle数据库的应用程序。 总结来说,Oracle 11.2.0.4 客户端的这三个组件提供了全面的数据库访问和开发功能。Basic组件满足了基本的...

    OracleHelper.vb

    5. **参数化查询**:为了提高代码的可读性和安全性,OracleHelper.vb鼓励使用参数化查询。参数化查询可以防止SQL注入攻击,同时提高查询性能,因为数据库可以缓存已编译的参数化查询计划。 6. **异常处理**:类库...

    Oracle.DataAccess.Client_dll

    这个功能允许应用程序注册对特定查询结果集的更改的兴趣,当数据库中的相关数据发生变化时,Oracle服务器会发送通知给已注册的应用。`OracleDependency`类就是用来设置和管理这种依赖关系的,它可以帮助实现数据驱动...

    安装oracle11.1.0.6

    4. **配置环境变量**:修改oracle用户的.bash_profile文件,设置路径、临时文件目录、Oracle基础目录、Oracle实例名、Oracle主目录、库路径以及类路径等环境变量。 #### 知识点二:系统参数优化 为了提高Oracle...

    oracle 11.2.0.1升级2.0.4教程

    2. **更改安装目录**:将原来的 `dbhome_1` 改为 `dbhome_2`,例如路径更改为 `D:\app\Administrator\product\11.2.0\dbhome_2`。 3. **等待升级完成**:耐心等待升级过程完成(大约需要 10 分钟)。当安装进程达到 ...

    Oracle客户端.7z

    5. **oracle-instantclient11.2-sqlplus-11.2.0.4.0-1.x86_64.rpm**:SQL*Plus工具包,这是一款命令行查询工具,用户可以直接通过命令行输入SQL语句来查询、修改数据库。 6. **oracle-instantclient11.2-devel-11.2...

    System.Data.OracleClient组件大全

    这个组件提供了对Oracle数据库的全面支持,包括数据查询、事务处理、存储过程调用等功能。标题提到的“组件大全”可能指的是包含不同版本的System.Data.OracleClient库,以适应不同环境的需求,比如32位(x86)和64...

    DataGrip连接Oracle的Driver连接.7z

    3. **数据库操作**:一旦连接建立,用户可以在DataGrip中执行SQL查询、创建/修改表、视图、存储过程,进行数据导入导出,以及进行版本控制等操作。 4. **安全注意事项**:处理数据库连接时,应确保遵循最佳实践,...

    Oracle客户端连接Oracle服务器.docx

    Oracle客户端连接Oracle服务器是...以上就是Oracle客户端连接Oracle服务器的主要知识点,包括配置步骤、连接工具的使用以及数据库管理中的基本概念。理解并熟练掌握这些内容对于日常的数据库管理和开发工作至关重要。

    Oracle 19.1.0.4+ogg搭建指南

    根据给定的文件内容,以下是对Oracle **.*.*.*版本与GoldenGate **.*.*.*.4(简称OGG)搭建过程的知识点详细说明: ### 一、环境说明 #### IP配置 - 源端(数据库源)IP地址:***.***.*.** - 目标端(数据库目标)...

    .NET连接Oracle数据库.docx

    通过ADO.NET,开发人员能够轻松地连接到这些数据源,并执行数据检索、修改等操作。 #### .NET Framework中的数据提供程序 .NET Framework为不同的数据源提供了多种数据提供程序: - **System.Data.SqlClient**:...

    Oracle.ManagedDataAccess.dll

    Oracle.ManagedDataAccess.dll提供了丰富的API接口,供开发者用于执行SQL查询、存储过程、事务控制、连接池管理等任务。这些接口包括OracleConnection用于建立和管理数据库连接,OracleCommand用于执行SQL命令,...

    Oracle 10.2.0.5EM证书过期补丁p8350262_10205_Generic

    Oracle 10.2.0.5 EM(Enterprise Manager)证书过期补丁p8350262_10205_Generic是Oracle公司为解决其数据库管理工具Oracle Enterprise Manager在特定版本中遇到的证书过期问题而发布的更新。这个补丁适用于Oracle 10.2...

    oracle11.2.0.1升级11.2.0.3

    安装过程中,系统可能会提示你修改参数文件配置,如`/etc/sysctl.conf`中的`kernel.shmmax`,以适应更大内存需求。如果遇到交换分区大小的问题,可能需要增加Linux系统的交换分区大小,但这不是升级过程的必要步骤。...

    C#连接oracle数据库实例

    在这个OracleTest项目中,你将找到一个完整的示例,演示如何使用C#和Oracle.ManagedDataAccess.dll来实现对Oracle数据库的查询和修改功能。通过研究这个项目,你可以更好地理解和应用这些概念,从而在实际开发中更加...

    centOS7.6.1810静默安装oracle12.2.0.1.0

    修改后,执行`/sbin/sysctl -p`来应用这些更改。 此外,还需要调整用户限制,这涉及到`/etc/security/limits.conf`文件。在其中添加针对`oracle`用户的nproc、nofile和stack的软硬限制,确保数据库能够正确处理并发...

    Oracle64.rar

    这个压缩包的目的是帮助用户快速安装并配置Oracle客户端,以便进行数据库连接、查询和其他相关操作。 Oracle客户端是与Oracle服务器通信的软件组件,它提供了SQL*Plus、Net Services、Oracle Data Provider for ...

    解决未在本地计算机注册OraOLEDB.Oracle.1提供程序.rar

    2.解压PLSQL配置.rar到C:\instantclient_11_2下(如果你指定了位置请修改到相应的位置),也就是步骤1的最终位置。3.将您的tnsnames.ora文件复制到C:\instantclient_11_2下3.进入C:\instantclient_11_2(也就是...

Global site tag (gtag.js) - Google Analytics