java连接oracle,驱动包已经下好,真心求高手写一段代码在eclipse连接oracle,查询表phone中的所有记录
看了很多文章和代码,依然没弄明白,真心求JDBC大神写一段代码教我,不要复制的SID:notebooktable:phone在eclipse连接oracle,查询表pho...
看了很多文章和代码,依然没弄明白,真心求JDBC大神写一段代码教我,不要复制的
SID:notebook
table:phone
在eclipse连接oracle,查询表phone中的所有记录,有驱动包!
数据库:notebook
SID:notebook
table:phone 只有2个字段:name和number,需要查询这2个字段的所有记录
本机IP:10.196.127.185
用户名abcd,密码ab123 展开
SID:notebook
table:phone
在eclipse连接oracle,查询表phone中的所有记录,有驱动包!
数据库:notebook
SID:notebook
table:phone 只有2个字段:name和number,需要查询这2个字段的所有记录
本机IP:10.196.127.185
用户名abcd,密码ab123 展开
展开全部
JDBC连接的步骤:
1、加载驱动
Class.forName("驱动名"); (这里的"驱动名"对应你的驱动,oracle的为"oracle.jdbc.driver.OracleDriver",这里其实就是一个包下的类,所以OracleDriver要大写)
2、建立连接 (url,username,password)
oracle的thin连接url为: jdbc:oracle:thin:@主机名:端口号:SID (这里的连接为常用的thin连接格式,其中主机名你可以使用 localhost表示本机,oracle端口号默认为1521,SID就是你的全局数据库名 notebook
username和password表示你要连接的用户名和密码,不解释了
Connection conn = DriverManager.getConnection(url,username,password);
3、执行statement获得结果ResultSet (这里以执行普通的查询语句为例)
有2种格式:
1、PreparedStatement stmt = conn.prepareStatement("你要执行的sql语句");
ResultSet rs = stmt.execute();
2、Statement stmt = conn.statement();
ResultSet rs = stmt.execute("你要执行的sql语句");
4、遍历ResultSet
while(rs.next()){
XXXX x = rs.getXXXX(1);
对取出的数据进行你需要的处理
}
5、关闭连接
conn.close();
备注:
1、别引错了包,这里的都是 java.sql.* 下面的包,出错了第一个检查是不是包引错了
2、确定oracle服务已经打开了,不然可能会出现没有oracleListener这种的错误
3、确定你的项目引入了那个驱动包(比如ojdbc14.jar)
4、驱动包名不要输错了,像上面说的,最后的OracleDriver是大写!!
5、其他的错误,自己去百度一下 ~~~~
6、求楼主采纳。。。。。。
1、加载驱动
Class.forName("驱动名"); (这里的"驱动名"对应你的驱动,oracle的为"oracle.jdbc.driver.OracleDriver",这里其实就是一个包下的类,所以OracleDriver要大写)
2、建立连接 (url,username,password)
oracle的thin连接url为: jdbc:oracle:thin:@主机名:端口号:SID (这里的连接为常用的thin连接格式,其中主机名你可以使用 localhost表示本机,oracle端口号默认为1521,SID就是你的全局数据库名 notebook
username和password表示你要连接的用户名和密码,不解释了
Connection conn = DriverManager.getConnection(url,username,password);
3、执行statement获得结果ResultSet (这里以执行普通的查询语句为例)
有2种格式:
1、PreparedStatement stmt = conn.prepareStatement("你要执行的sql语句");
ResultSet rs = stmt.execute();
2、Statement stmt = conn.statement();
ResultSet rs = stmt.execute("你要执行的sql语句");
4、遍历ResultSet
while(rs.next()){
XXXX x = rs.getXXXX(1);
对取出的数据进行你需要的处理
}
5、关闭连接
conn.close();
备注:
1、别引错了包,这里的都是 java.sql.* 下面的包,出错了第一个检查是不是包引错了
2、确定oracle服务已经打开了,不然可能会出现没有oracleListener这种的错误
3、确定你的项目引入了那个驱动包(比如ojdbc14.jar)
4、驱动包名不要输错了,像上面说的,最后的OracleDriver是大写!!
5、其他的错误,自己去百度一下 ~~~~
6、求楼主采纳。。。。。。
追问
java.lang.ArrayIndexOutOfBoundsException: 0
at oracle.jdbc.driver.OracleSql.main(OracleSql.java:1033)
展开全部
oracle 数据库的名称叫什么? 用户名 密码是什么? phone 表里有几项纪录啊?需要显示的纪录的名称都叫什么?说详细点..
更多追问追答
追问
我补充问题了,求指导
追答
opone 表里需要显示哪几项内容啊?列的名称叫什么?
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
跟sql 一样的,只是连接的方式不同啊
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class Xx {
public void x() throws Exception{
String sDBDriver = "oracle.jdbc.driver.OracleDriver";
String sConnStr = "jdbc:oracle:thin:@192.168.0.58:1521:notebook";
Connection conn = null;
ResultSet rs = null;
Statement stmt = null;
Class.forName(sDBDriver);
conn = DriverManager.getConnection(sConnStr,"abcd","abc123");
stmt = conn.createStatement();
//stmt.executeQuery("create table aaa(aaa int)");
//stmt.executeUpdate("insert into bbb values(456)");
rs = stmt.executeQuery("select * from phone");
while (rs.next()){
System.out.println("name: " + rs.getString(1));
System.out.println("number: " + rs.getInt(2));
}
rs.close();
stmt.close();
conn.close();
}
}
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class Xx {
public void x() throws Exception{
String sDBDriver = "oracle.jdbc.driver.OracleDriver";
String sConnStr = "jdbc:oracle:thin:@192.168.0.58:1521:notebook";
Connection conn = null;
ResultSet rs = null;
Statement stmt = null;
Class.forName(sDBDriver);
conn = DriverManager.getConnection(sConnStr,"abcd","abc123");
stmt = conn.createStatement();
//stmt.executeQuery("create table aaa(aaa int)");
//stmt.executeUpdate("insert into bbb values(456)");
rs = stmt.executeQuery("select * from phone");
while (rs.next()){
System.out.println("name: " + rs.getString(1));
System.out.println("number: " + rs.getInt(2));
}
rs.close();
stmt.close();
conn.close();
}
}
追问
代码执行无报错,但是有异常
java.lang.ArrayIndexOutOfBoundsException: 0
at oracle.jdbc.driver.OracleSql.main(OracleSql.java:1033)
我用的java1.6,驱动用的ojdbc14.jar,oracle的版本是10.1.0
是驱动版本的问题?还是监听的1521端口有问题呢?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你写连接,是想要DBHelper类,还是session工厂呀
追问
什么什么工厂,听不懂你说的是啥
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询