菜鸟程序员初次搭建MyEclipse与Oracle10g的环境

     本菜鸟纯属小白一个,野生的学渣一枚,经厉过痛苦艰辛的过程,终于把MyEclipse与Oracle之间的各种初级连接搞定,下面记录一下我遇到的各种问题,留个纪念。

     jsp测试数据库连接的代码。

<span style="font-size:14px;"><%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>
<%@ page import="java.io.*,java.sql.*,javax.sql.* ,javax.naming.*" %>
<%@ page contentType="text/html; charset=UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <base href="<%=basePath%>">
    
    <title>My JSP 'MyJsp.jsp' starting page</title>
    
	<meta http-equiv="pragma" content="no-cache">
	<meta http-equiv="cache-control" content="no-cache">
	<meta http-equiv="expires" content="0">    
	<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
	<meta http-equiv="description" content="This is my page">
	<!--
	<link rel="stylesheet" type="text/css" href="styles.css">
	-->

  </head>
  
  <body>
    This is my JSP page. <br>
    <%
    Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
    String url="jdbc:oracle:thin:@localhost:1521:orcl";
    String user="scott";
    String password="newpwd";
    Connection conn= DriverManager.getConnection(url,user,password);
    Statement stmt= conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
    String sql= "SELECT * FROM aaaaaa";
    ResultSet rs= stmt.executeQuery(sql);
    while(rs.next()){
     %>
     first=<%=rs.getString(1) %><br>
    second=<%=rs.getString(2) %><br>
    <%} %>
     <%out.print("数据库操作成功"); %>
     <% rs.close();
     stmt.close();
     conn.close();
      %>
  </body>
</html>
</span>
起初遇到的问题在
<span style="font-size:14px;"> Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();</span>
无法加载数据库,后来发现是classes12.zip驱动包没有加载到项目里。


接下来

<span style="font-size:14px;">   Connection conn= DriverManager.getConnection(url,user,password);</span>
怎么都连不上,报错是数据库内部的问题,后来发现第一个问题是数据库是锁着的,解锁之后,又发现登录口令过期了。。。。哭死(;´༎ຶД༎ຶ`)

解决办法是:

查看用户状态:

SQL>select username,account_status from dba_users;

解锁数据库:

SQL>alter user username account unlock;

在以SYSDBA身份登陆时修改其他用户的密码,比如:

SQL> alter user username identified by newpwd;

再登陆就ok啦。但是奇怪的这期间我发现用tiger/scott这个口令登陆pl/sql还是没问题的,求大神解答。。。


继续,还没完呢~

我用的是jsp测试Oracle,结果发现编译什么的都可以通过,网页也可以显示,但就是不出结果,咋改都不出。我崩溃了一天之后决定先用Java测试一下Oracle。。。无果。。。百度大神说我取不到结果是insert之后没有commit,我的确commit了,但还是木有。期间我发现过我的表拥有者是系统,也产生过疑问,但是没多想,还以为问题在sql语句那里。后来在一位大神的启发下,我用normal的身份建立一张表(以前都是用dba的身份),结果华丽丽的取出来了。O(∩_∩)O~~

经历过以上的种种,我的数据库连接终于可以正常读取数据了,期间有好多同学帮过我,感谢他们!but,我还是想说,虽然有各种培训班会给你指导,让你在编程的道路上一帆风顺,但我觉得还不如自己解决来得实在,起码我对Oracle的各种口令有了一个基本的了解,我还是要在我野生学渣的道路上继续下去,给自己加了个油,继续学习啦~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值