java连接Oracle数据库详细代码,jdbc

时间:2021-07-01 07:45:45

下面是我出不连接数据库的详细代码和注释!

package java_oracle;

import java.sql.*;

public class oracle {
public static void main(String[] args) {

try {
// 加载驱动
Class.forName("oracle.jdbc.driver.OracleDriver");
/*
* 用来注册jdbc的Oracle的驱动程序,
*/

// 得到连接
Connection ct = DriverManager
.getConnection("jdbc:oracle:thin:@localhost:1521:orcl",
"scott", "sinstar");
/*
* Connection代表当前数据库连接,getConnection有三个参数,固定用法是
* jdbc:oracle:thin:这一段是Oracle的,保持不变,@localhost:1521:orcl","scott", "sinstar"中
* @localhost表示主机,1521是端口(用sqlDevelop连接数据库一般也是这个端口,)oracl是SID(应该就是使用的数据库的名称!)(我的这个数据库的sid是这个
* ,其他的数据库看情况,)scott和sinstar分别是用户名和密码,
*
* 连接字符串(协议名:jdbc,子协议名: oracle:thin 子名称:@localhost:1521:oracleDB)

String url ="jdbc:oracle:thin:@localhost:1521:ora92";
thin是oracle的一种驱动模式 它还有别的驱动模式 比如oci
一般都是用thin的
localhost=127.0.0.1 ip地址
1521oracle默认使用的端口
oracl数据库名字
关键字不区分大小写 值区分大小写
*/

Statement sm = ct.createStatement();
ResultSet rs = sm.executeQuery("select * from emp");
/*
* Statement用于向数据库发送语句;ResultSet代表结果集,它封装了查询到的数据
*/


while (rs.next()) {
System.out.print("id:"+rs.getInt("empno"));//rs.getString(1)
System.out.print("用户名:" + rs.getString("ename"));//rs.getString(2)
System.out.println("工资:"+rs.getString(6));//在这个表里,第6列表示sal工资,可以用rs.getString("sal");代替

/*
* 获取查询结果有两种方法!
* 1,使用rs.getInt("列名");或者rs.getString("列名");
* 2,使用rs.getString(1);代表获取第一列,2代表第二列,他是从1开始的,不是0
*/

}
rs.close();
sm.close();
ct.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}

用Oracle自带的sqlDevelop连接数据库的页面是
java连接Oracle数据库详细代码,jdbc